`
gpqhl0071
  • 浏览: 54736 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

STRUTS--struts1、struts2那点区别

 
阅读更多
struts1、struts2有什么区别:

以下在网上搜集的
1 action实现类方面的对比:
struts1要求action类继承一个抽象基类,是使用抽象类编程而不是接口;struts2 action类可以实现一个action接口,也可以实现其他接口,使可选和定制的服务成为可能。struts2提供一个ActionSupport基类 去实现常用的接口。但即使是这个action接口也不是必须实现的,只要是一个包含execute方法的pojo类,都可以用作struts2的action 。

2 线程方面:
struts1 是单例模式并且必须是线程安全的,struts2 action为每一个请求产生一个实例,因此没有线程安全问题。

3 servlet依赖方面:
struts1 action依赖servlet API;struts2 action不在依赖于servlet api,从而允许action脱离web容器运行,降低测试难度。

4 表达式语言方面:
struts1 整合了JSTL ,struts2也可以使用JSTL,而且整合了一种更强大和灵活的表达式语言:OGNL 。

5 绑定值到视图的对比:
struts1使用标准JSP机制把对象绑定到视图页面;struts2使用“ValueStack”技术,使标签库能访问值,而不需要把对象和视图页面绑定到一起。

6 类型转换的对比:
Stuts1的actionForm的属性通常都是String类型,struts1使用comments-beanutils进行 类型转换,每个类一个转换器,转换器是不可配置的;struts2使用OGNL进行类型转换,支持基本数据类型和常用对象之间的转换。

7 数据校验对比:
struts1支持在actionFrom重写validate方法中手动校验,或者通过整合Commons alidator框架来完成数据校验。struts2支持重写validate方法进行校验,也支持整合xwork校验框架进行校验。

struts2处理流程:
1、加载类(FilterDispatcher)   
2、读取配置(struts配置文件中的Action)   
3、派发请求(客户端发送请求)   
4、调用Action(FilterDispatcher从struts配置文件中读取与之相对应的Action )   
5、启用拦截器(WebWork拦截器链自动对请求应用通用功能,如验证)   
6、处理业务(回调Action的execute()方法)   
7、返回响应(通过execute方法将信息返回到FilterDispatcher)   
8、查找响应(FilterDispatcher根据配置查找响应的是什么信息如:SUCCESS、ERROR,将跳转到哪个jsp页面)   
9、响应用户(jsp--->客户浏览器端显示)   
10、struts2标签库(相比struts1的标签库,struts2是大大加强了,对数据的操作功能很强大)
分享到:
评论

相关推荐

    struts2-core.jar

    struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...

    struts-config.xml struts标准配置文件 struts-config

    struts-config.xml struts标准配置文件 struts-config

    struts-taglib-1.3.8.jar

    struts-taglib-1.3.8.jar struts-taglib-1.3.8.jar

    jakarta-struts-1.1.zip_jakarta-Struts-1_jakarta-struts 1_jakarta

    Jakarta Struts 1.1的标签还包括"jakarta-struts_1"和"struts1_w",这可能是指Struts 1的不同版本或相关讨论主题。Struts 1在后续版本中不断演进,添加了更多特性,但随着Spring MVC和Play Framework等新型框架的...

    struts-2.0.14-lib Struts2开发包

    包含Struts2框架的核心类库,以及Struts2的第三方插件类库 struts2-core-2.0.14 xwork-2.0.7 ognl-2.6.11 commons-logging-1.0.4 freemarker-2.3.8 等等。

    struts-core-1.3.8-API文档-中文版.zip

    赠送jar包:struts-core-1.3.8.jar; 赠送原API文档:struts-core-1.3.8-javadoc.jar; 赠送源代码:struts-core-1.3.8-sources.jar; 赠送Maven依赖信息文件:struts-core-1.3.8.pom; 包含翻译后的API文档:struts...

    Struts2的DTD配置文件struts-2.3.dtd

    1. **package**:这是Struts2配置的基本单元,可以包含多个动作(action)、拦截器(interceptor)和结果(result)。每个package都有一个namespace,用于区分不同功能或模块。 2. **action**:定义了一个用户交互...

    struts-2.3.7-all

    struts-2.3.7-all jar包

    struts-config详解

    Struts-config详解 Struts-config.xml 是Struts框架的核心配置文件,它描述了所有的Struts组件。在这个文件中,我们可以配置主要的组件及次要的组件。下面是struts-config.xml文件的主要元素: 一、struts-config....

    org.springframework.web.struts-3.1.0.M2.jar

    同时,Struts的配置文件(struts-config.xml或struts2的struts.xml)也需要进行相应的调整,引入Spring的插件和配置信息。 `springframework-license.txt`文件则包含了Spring框架的许可协议,它规定了软件的使用、...

    struts-1.2.9-lib.zip和struts-1.2.9-src.zip

    然而,需要注意的是,Struts 1.x已经是一个相对老的版本,存在一些安全问题和性能限制,对于新的项目,推荐使用更新的Struts 2或者其他现代的Web框架,如Spring MVC或Play Framework。同时,持续关注和升级框架版本...

    struts-xwork-core源码

    Struts-xwork-core是Struts2框架的核心组件,它提供了Action和结果的执行模型,以及类型转换、数据验证和国际化等功能。在这个压缩包中,包含了该核心库的源代码,对于学习和理解Struts2的工作原理及其内部机制极具...

    struts-2.5.22-all.zip

    1. `struts2-core.jar`:核心框架,提供基础的MVC功能。 2. `struts2-convention-plugin.jar`:约定优于配置的插件,使得类和方法的命名可以自动映射到URL。 3. `struts2-config-browser-plugin.jar`:配置浏览器...

    struts-2.3.4笔记

    Struts 2 的出现是 Struts 1 的升级版本,旨在提供更强大、更灵活的功能,并吸收了其他框架如 WebWork 的优点。 在Struts 2.3.4版本中,有几个关键知识点值得深入理解: 1. **Action类与结果**:Struts 2 中的核心...

    struts-1.3.8-all.zip

    Struts 1.3.8是该框架的一个版本,主要致力于提供稳定性和安全性更新,以及对旧版Struts 1.x的支持。这个“struts-1.3.8-all.zip”官方完整包包含了运行和开发Struts 1.3.8应用所需的所有组件和资源。 首先,我们来...

    Struts所有jar包、DTD文件(struts-1.2.9-bin.rar)

    1. **struts-config_1_2.dtd**:定义了`struts-config.xml`的元素和属性。 2. **web-app_2_4.dtd** 或 **web-app_2_5.dtd**:定义了`web.xml`的元素和属性,这是Servlet容器用来配置Web应用程序的文件。 在使用...

    struts-taglib-1.3.10.jar struts-taglib.jar taglib.jar

    struts-taglib-1.3.10.jar struts-taglib.jar taglib.jar

    struts-spring-other-lib 等jar包

    struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-...

    struts-2.3.16-all

    Struts 2是Java平台上的一个开源MVC框架,它基于Model-View-Controller(模型-视图-控制器)设计模式,旨在简化企业级Web应用的开发。`struts-2.3.16-all`这个压缩包包含了Struts 2框架的版本2.3.16的所有组件和相关...

    struts-1.3.8-lib(new)

    1. **struts-core.jar**:这是Struts的核心库,包含了Action类、Form Beans、RequestProcessor以及Dispatcher等核心组件。 2. **struts-bean.jar**:提供Bean相关的标签库,如logic和html标签。 3. **struts-...

Global site tag (gtag.js) - Google Analytics