struts和struts2的区别

拥有回忆 提交于 2020-02-29 22:19:08

 

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

 

一、Structs2简介:

1.什么是Struct2?

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

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

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

2.Struct2框架的优点?

   1.Structs2是非侵入式设计

         Structs2的Action类为POJO类,即不依赖于Servlet API和Structs API。

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

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

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

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

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

 二、搭建Structs2开发环境

1.新建一个Web Project工程。

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版本后必须加入此文件。

方法一:

 

方法二:

 

 


 

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

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>

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

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!