Struts2有以下优点:
- 在软件设计上struts2没有像struts1那样跟Servlet API和struts API有着紧密的耦合,struts2应用可以不依赖于Servlet API和Struts API,Struts2的这种设计属于无侵入式设计。
- Struts2提供了拦截器,利用拦截器可以进行AOP编程,实现如权限拦截的功能。
- Struts2提供了类型转换器,我们可以把特殊的请求参数转换成需要的类型。Struts1中,如果要实现同样的功能,就必须向Struts1的底层实现BeanUtil注册类型转换器才行。
- Struts2提供支持多种表现层技术,如:JSP, freeMarker, Velocity等。
- Struts2的输入校验可以对指定方法进行校验,
- Struts2提供了国际化资源文件不同范围的管理,如全局范围,包范围,Action范围。
搭建Struts2开发环境
1.找到开发Struts2应用需要使用到以下的jar文件(缺一不可)。
- commons-fileupload-1.2.1.jar
- commons-io-1.3.2.jar
- freemarker-2.3.16.jar
- ognl-3.0.jar
- struts2-core-2.2.1.jar
- xwork-core-2.2.1.jar
- javassist-3.7.ga.jar
2.Strut2应用的配置文件,struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
</struts>
3.web.xml中加入Struts2 MVC框架的启动配置
<filter>
<filter-name>struts2</filter-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-mapping>