zoukankan      html  css  js  c++  java
  • Struts1和Struts2区别

    1.struts1的action是单例模式且必须是线程安全的,action的一个实例处理所有请求.
    struts2的action对象为每个请求产生一个实例,没有线程安全问题.
    struts1的action依赖于servlet api,struts2的action不依赖与容器,允许脱离容器单独测试.
    2.struts1的execute方法依赖于servlet api,使得测试要依赖于容器.struts2的action可以通过初始化,设置属性,调用方法来测试,依赖注入支持是测试更容易.
    struts1试用ActionForm对象捕获输入,普通JavaBean不能捕获输入.动态bean可以作为ActionForm的选择,但是是在重复描述已经存在的Javabean.
    struts2直接试用action属性作为输入属性,消除了对第二个输入对象的需求.也支持ActionForm模式,这种ModelDriven特性简化了tiglib对POJO对象的应用.
    3.struts1整合的JSTL,试用JSTL EL,EL有基本对象图遍历功能,但是对集合和索引属性的支持很弱
    struts2可以使用JSTL,但是也支持一个更强大和灵活的表达式语言--
    Object Graph Notation Language(OGNL)
    4.struts1试用标准jsp机制把对象绑定到页面中来访问
    struts2试用ValueStack技术,允许试用一系列名称相同但类型不同的属性重用页面
    5.struts1的ActionForm通常都是String类型,试用BeanUtils进行类型转换
    struts2使用OGNL进行类型转换,提供基本和常用对象的转化器.
    6.struts1支持在ActionForm的validate方法中手动效验,或者通过validator扩展效验
    struts2支持通过validate方法和XWork效验框架来进行效验
    7.struts1支持每个模块有单独的request生命周期,但是模块中的所有action必须共享相同的生命周期
    struts2支持通过拦截器interceptor stacks为每个action创建不同的生命周期

  • 相关阅读:
    【POJ 2987】Firing (最小割-最大权闭合子图)
    -网络流经典模型
    【bzoj 3299】 [USACO2011 Open]Corn Maze玉米迷宫(最短路)
    【POJ 3623】 Best Cow Line, Gold (后缀数组)
    题表-各种生成树
    yield 生成器的运行机制
    numpy.random.shuffle(x)的用法
    Softmax回归(Softmax Regression
    softmax 函数
    极大似然估计的朴素理解
  • 原文地址:https://www.cnblogs.com/Laupaul/p/2391693.html
Copyright © 2011-2022 走看看