首页 > 代码库 > Struts2 简单的学习总结

Struts2 简单的学习总结

Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。

 

Struts 2 相比Struts 1的优点:

1. 在软件设计上Struts 2 没有像Struts 1那样跟Servlet API 和 struts API 有着紧密的耦合。Struts 2的应用可以不依赖于Servlet API和Struts API 。

2. Struts 2 提供了拦截器,利用拦截器可以进行AOP编程。

3. Struts 2 提供了类型转换器。

4. Struts 2 提供支持多种表现层技术,如:JSP 、 freeMarker等。

5. Struts 2 的输入校验可以指定方法进行校验。

6. Struts 2 提供了全局范围、包范围和Action范围的国际化资源文件管理实现。

 

搭建Struts 2 开发环境


1. 找到开发Struts 2的应用需要用到的jar包。

  1).  struts2-core-2.3.30.jar

  2).  xwork-core-2.3.30.jar

  3).  freemarker-2.3.22.jar

  4).  ognl-3.0.19.jar

      5).  commons-lang3-3.2.jar

  6).  commons-io-2.2.jar

  7).  commons-fileupload-1.3.2.jar

  8).  javassist-3.11.0.GA.jar

  9).  commons-logging-1.1.3.jar

2. 编写Struts 2的配置文件(struts.xml)。

  struts.xml 放置在 根路径下及 src 下面,是 struts2 的核心配置,主要配置 Action

1 <?xml version="1.0" encoding="UTF-8" ?>2 <!DOCTYPE struts PUBLIC3     "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"4     "http://struts.apache.org/dtds/struts-2.3.dtd">5 6 <struts>7 8 </struts>

 

3. 在web.xml中加入Struts2 启动框架配置。

  在Struts 2中,Struts框架是通过Filter(StrutsPrepareAndExecuteFilter)启动的

  StrutsPrepareAndExecuteFilter 的 init() 方法中将会读取类路径下默认的配置文件及struts.xml

  Filter 过滤器是用户请求和处理程序之间的一层处理程序。它可以对用户请求和处理程序响应的类容进行处理,通常用于权限、编码转换等场合

  struts 2 读取到 struts.xml的内容后,以javabean形式存放在内存中,以后Struts 2对用户的每一次请求处理将使用内存中的数据。

 1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3     xmlns="http://xmlns.jcp.org/xml/ns/javaee" 4     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 5     id="WebApp_ID" version="3.1"> 6  7     <display-name>struts2</display-name> 8  9     <filter>10         <filter-name>struts2</filter-name>11         <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>12     </filter>13 14     <filter-mapping>15         <filter-name>struts2</filter-name>16         <url-pattern>/*</url-pattern>17     </filter-mapping>18 </web-app>

 

4.  ActionSupport

  ActionSupport 类为 Action 提供了一些默认实现,主要包括预定义常量、从资源文件中取文本资源、接收验证错误信息和验证的默认实现。

 

Struts2 简单的学习总结