码迷,mamicode.com
首页 > 其他好文 > 详细

浅谈Struts2

时间:2015-06-11 22:44:42      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:

计应134(实验班) 张人川
 
一、Struts2的优点:
 
在软件设计上Struts2没有像Struts1那样和Servlet AP紧密的耦合。Strus2设计属于无侵入设计。
 
Struts2提供了拦截器,利用拦截器可以进行AOP编程,实现如权限拦截等功能。
 
Struts2提供了类型转换器,我们可以吧特殊的请求参数转换成需要的类型。
 
Struts2提供支持多种表现层技术,如JSP,freeMarker,Velocity
 
Struts2的输入校验可以对指定方法进行校验
 
提供了全局范围,包范围和Action范围的国际化资源文件实现
二、Struts2开发环境
 
找到Struts2应用需要的用到的jar文件
Struts2-core-2.x.x.jar
Xwork-2.x.x.jar
Ognl-2.6.x.jar
Freemarker-2.3.x.jar
Commons-logging-1.1.x..jar
Commons-fileupload.1.2.1.jar
编写Struts2的配置文件
 
在web.xml中加入Struts2框架的启动配置
三、第一Struts2应用
struts.xml
<struts>
<package name=”itcast” namespace=”/test” extends=struts-default”>
<action name=”helloworld” class=”cn.itcast.action.HelloWorldAction” method=”execute”>
<result name=”success”>/WEB-INF/page/hello.jsp</result>
</action>
</package>
</sruts>
HelloWorldAction
public class HelloWorldAction{
private String message;
public String getMessage(){
return message;
}
public String execute(){
message=”我的第一个struts应用”;
return “success”;
}
}
 
四、Action的搜索顺序(请求路径:http://server/struts2/path1/path2/path3/test.action)
 
首先寻找namespace为path1/path2/path3的package,如果不存在这个package则执行步骤2;如果存在,则在这个package种找名字为test的action,如果找不到test.action则取默认命名空间(不设置namespace或namespace=““)去找;
 
寻找path1/path2
 
寻找path1
 
寻找namespace为/的pachage,找不到去默认命名空间
 
五、Action配置中的各项默认值
 
如果没有为action指定class,默认是ActionSupport
 
如果没有为action指定method,默认是execute()方法
 
如果没有指定result的name属性,默认值为success
 
例:
直接跳转到一个视图
<action name=”addUI”>
<result>/WEB-IFO/page/employeeAdd.jsp</result>
</action>

浅谈Struts2

标签:

原文地址:http://www.cnblogs.com/qq347471280/p/4570196.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!