S4.6_Struts2_Annotation action动作类使用annotation注解的配置方式
2016-12-13 16:44
555 查看
我们接下来将要创建的项目目录结构如下:
由项目S2.1_Struts2_ByMyEclipse (如何下载它:点击打开链接)复制生成一个新的项目S4.6_Struts2_Annotation
第1步:在src/struts.xml配置文件中只保留如下配置代码,其余的代码都删掉:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
</struts>
第2步:在WebRoot/WEB-INF/web.xml文件中配置struts的action扫描路径
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<!-- 这里配置struts的action扫描路径 -->
<init-param>
<param-name>actionPackages</param-name>
<param-value>net.nw.action</param-value>
</init-param>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
struts2 annotation所建action命名规则:去掉类名的Action部分。然后将每个分部的首字母转为小写,用减号“-”分割驼峰英文单词。
a) 举例:TestAction,那么访问的时候就是test.action,或者test.do或者test(这个根据你的
后缀配置来定);
b) 举例:StudentListAction,那么访问的时候就是student-list.action或者同上。
注意:比如像StudentListAction类,如果你在地址栏输入StudentList是访问不到的,必须输入student-list
第3步:添加注解到LoginAction类上面
package net.nw.action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import net.nw.dao.UserDao;
import net.nw.vo.User;
@ParentPackage(value="struts-default")
@Namespace(value="/")
//@Result(name="success",location="/login_success.jsp")
@Results({
@Result(name="login_success",location="/login_success.jsp",type="redirect"),
@Result(name="login_failure",location="/login_failure.jsp",type="redirect")
})
public class LoginAction {
private String username;//必须与html标签中的名称一样,此处私有变量的值直接来自html标签对应名称填充过来的值
private String password;//必须与html标签中的名称一样,此处私有变量的值直接来自html标签对应名称填充过来的值
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
//调用业务层操作类的方法
public String execute(){
User u = new User();
u.setUsername(this.getUsername());
u.setPassword(this.getPassword());
UserDao dao = new UserDao();
if(dao.userLogin(u)){
return "login_success";
} else{
return "login_failure";
}
}
}
第4步:发布运行程序,效果图如下:
http://localhost:8080/S4.6_Struts2_Annotation/login.jsp
本项目的下载地址:点击打开链接
由项目S2.1_Struts2_ByMyEclipse (如何下载它:点击打开链接)复制生成一个新的项目S4.6_Struts2_Annotation
第1步:在src/struts.xml配置文件中只保留如下配置代码,其余的代码都删掉:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
</struts>
第2步:在WebRoot/WEB-INF/web.xml文件中配置struts的action扫描路径
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<!-- 这里配置struts的action扫描路径 -->
<init-param>
<param-name>actionPackages</param-name>
<param-value>net.nw.action</param-value>
</init-param>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
struts2 annotation所建action命名规则:去掉类名的Action部分。然后将每个分部的首字母转为小写,用减号“-”分割驼峰英文单词。
a) 举例:TestAction,那么访问的时候就是test.action,或者test.do或者test(这个根据你的
后缀配置来定);
b) 举例:StudentListAction,那么访问的时候就是student-list.action或者同上。
注意:比如像StudentListAction类,如果你在地址栏输入StudentList是访问不到的,必须输入student-list
第3步:添加注解到LoginAction类上面
package net.nw.action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import net.nw.dao.UserDao;
import net.nw.vo.User;
@ParentPackage(value="struts-default")
@Namespace(value="/")
//@Result(name="success",location="/login_success.jsp")
@Results({
@Result(name="login_success",location="/login_success.jsp",type="redirect"),
@Result(name="login_failure",location="/login_failure.jsp",type="redirect")
})
public class LoginAction {
private String username;//必须与html标签中的名称一样,此处私有变量的值直接来自html标签对应名称填充过来的值
private String password;//必须与html标签中的名称一样,此处私有变量的值直接来自html标签对应名称填充过来的值
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
//调用业务层操作类的方法
public String execute(){
User u = new User();
u.setUsername(this.getUsername());
u.setPassword(this.getPassword());
UserDao dao = new UserDao();
if(dao.userLogin(u)){
return "login_success";
} else{
return "login_failure";
}
}
}
第4步:发布运行程序,效果图如下:
http://localhost:8080/S4.6_Struts2_Annotation/login.jsp
本项目的下载地址:点击打开链接
相关文章推荐
- 个人总结的Struts2拦截器使用和拦截栈的配置,基于注解的方式
- hibernate笔记--使用注解(annotation)方式配置单(双)向多对一的映射关系
- Struts2零配置开发(注解Annotation的使用)
- struts2 使用注解方式配置
- Struts2之Annotation注解配置使用
- struts2使用注解配置Action传参方式
- Struts2使用22 -- 注解配置4 -- 转换器注解
- struts2使用注解配置Action之间的跳转
- [struts2]Struts2.2 Annotation 注解配置Action
- Struts2基于注解Annotation的零配置开发(一)
- struts2-convention-plugin Annotation(零配置中的注解)
- 使用@Controller注解为什么要配置<mvc:annotation-driven />
- Struts2使用21 -- 注解配置3 -- 验证注解
- 使用注解方式配置spring中的jdbc事务
- Struts2基于注解Annotation的零配置开发(二)
- 使用struts2-convention-plugin-2.2.1.1.jar插件实现基于注解的配置。
- Struts2使用之Action注解的配置
- Struts2 Annotation 注解配置
- Struts2零配置开发(注解Annotation的使用)一的简介与内容
- Struts2零配置开发(注解Annotation的使用)一