首页 > 代码库 > 框架2--Struts2
框架2--Struts2
Struts1.x
Apache项目的一个子项目
2001年出现Struts1,成为第一个MVC框架
2004年成为Apache软件基金会的顶级项目
Struts2.x
在Struts1.x和webwork的基础上进行合并
但是struts2和struts1的差异很大,却和webwork几乎相同,级就是说struts2是webwork的更新产品
创建一个struts2项目需要将一下jar文件添加到lib目录下
添加struts2核心过滤器的配置
<filter>
<filter-name>struts2</fiter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2<filter-name>
<url-pattern>/*</url-pattern>
</filter-mappping>
编写一个JSP页面
<body>
<form action="hellowworld.action" method="post">
<lable>姓名:</lable>
<input type="text" name="name" placeholder="请输入姓名">
<button type="submit">提交</button>
</form>
</body>
在写一个Action,且为其定义一个成员变量name,提供get 、set 方法以及execute方法
public class HelloWorldAction{
private String name;
public String execute(){
if(name!=null&&!name.isEmpty()){
return "success";
}
return "failtrue";
}
}
配置Action,在 src 目录中创建struts.xml中
<package name="helloworld" namespace="/helloworld" extends="struts-default">
<action name="helloworld" class="com.zhidisoft.action.HelloWorldAction">
<result>/success.jsp</result>
<result name="failtrue">/failtrue.jsp</result>
</action>
</package>
核心过滤器
在struts2.1.2之前的核心过滤器为:
org.apache.struts2.dispatcher.FilterDispatcher
在struts2.1.3之后核心过滤器被建议改为:
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
StrutsPrepareAndExecuteFilter功能解析
1.过滤用户请求
2.初始化请求处理环境
3.创建Action,调用Action的execute方法
4.根据execute方法返回结果,将请求发给相应的结果界面
业务逻辑控制器Action
Struts2中,StrutsPrepareAndExecuteFilter作为核心控制器,统一接受
框架2--Struts2