1.Struts2简介和Struts2开发环境搭建

一、Struts2简介:

1.什么是Struts2?

著名的SSH三大框架分别为:表现层(Struts)、业务逻辑层(Spring),持久化层(Hibernate).

    Struts2是在WebWork2基础上发展而来的MVC框架,尽管Struts2与Struts在名字上很像,但代码编写风格上几乎是完全不一样的。

    Struts2比Struts更优秀,修复了Struts的许多Bug和缺点。

2.Struct2框架的优点?

   1.Struts2是非侵入式设计

         Struts2的Action类为POJO类,即不依赖于Servlet API和Struts API。

   2.Struts2提供了拦截器,利用拦截器可以进行AOP编程,实现如权限拦截等功能。

   3.Struts2提供了类型转换器,可以将特殊的请求参数转换成需要的类型。

   4.Struts2支持多种表现层技术,如JSP、freeMarker、vectocity等。

   5.Struts2的输入验证可以对指定的方法进行验证。

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

 二、搭建Struts2开发环境

1.新建一个Web Project工程。

1.Struts2简介和Struts2开发环境搭建

1.Struts2简介和Struts2开发环境搭建

2.导入所需要用到的Structs2的jar包,这里暂时先只导入Structs核心jar包。

Structs2所有jar包下载地址http://struts.apache.org/download.cgi#struts23163

核心jar包:

xwork-core-2.1.6.jar: Structs2框架的核心类库
struts2-core-2.1.8.1.jar: XWork类库,Structs2在其上构建
ognl-2.7.3.jar:对象图导航语言(Object Graph Navigation Language),Structs2框架通过其读写对象属性。
freemarker-2.3.15.jar:   Structs2的UI标签的模板使用FreeMarker编写
commons-logging-1.0.4.jar: ASF出品的日志包,Structs2框架使用这个日志包来支持Log4J和JDK1.4+的日志记录。
commons-fileupload-1.2.1.jar: 文件上传组件,2.1.6版本后必须加入此文件。

方法一:

1.Struts2简介和Struts2开发环境搭建

 1.Struts2简介和Struts2开发环境搭建

方法二:

1.Struts2简介和Struts2开发环境搭建

1.Struts2简介和Struts2开发环境搭建

1.Struts2简介和Struts2开发环境搭建

 1.Struts2简介和Struts2开发环境搭建

 1.Struts2简介和Struts2开发环境搭建


 3.复制Structs2.xml文件到项目的src目录下。

1.Struts2简介和Struts2开发环境搭建

Structs2.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>

4.在Struct中,Structs2框架式通过Servlet启动的。而在Structs2中,Structs2框架式通过Filter启动的。

Structs2在web.xml中的启动配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    
        <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>

<welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>

注意:自动Structs2.1.3以后,下面的FilterDispatcher已经标注为过时

<filter-class>org.apache.structs2.dispatcher.FilterDispatcher</fileter-class>

1.Struts2简介和Struts2开发环境搭建

5.测试Structs2是否搭建成功,发布程序项目,开启tomcat服务。

1.Struts2简介和Struts2开发环境搭建

1.Struts2简介和Struts2开发环境搭建