用哪个好

解决方案 »

  1.   

    1 Action类:Struts1 继承一个抽象基类,Struts2就自由点,只要有 execut方法的Pojo对象就能当action使用,当然也可以继承一些接口和基类。
        2线程:Struts1 action是单例模式而且必须是线程安全的。Struts2 action为每一个请求产生一个实例,所以没有线程安全问题。
        3 依赖:Struts1 Action依赖servletAPI,Struts2不依赖,因为Struts2 的Action就是一个普通的java类。
       4 封装请求:Struts1用扩展ActonForm的类来捕获页面请求参数,ActonFrom是纯粹的Vojo,这使开发者往往还要自行创建一个javaBean来封装这些参数用来作为持久或其它用途,重复的描述一个内容。Struts2可以在Acton里设置相应的属性,也可以支持ActionForm这种模式,用模型驱动(ModelDriven)的特性简化了标签对POJO输入对象的引用。
       5 表达式语言:Struts1 整合了jstl,Struts2不仅可以使用jstl,还整合了OGNL,因此表达式语言功能更强大。
       6 传值到视图:Struts1使用标准jsp机制绑定对象到页面上下文,Struts2使用ValueStack技术,访问更灵活。
       7 类型转换:Struts1 使用Commons-Beanutils进行类型转换,转换每一个类,而不能为每一个实例配置。 Struts2使用ONGL进行类型转换,支持基本数据类型和常用对象之间的转换。
       8数据校验:Struts1支持ActionForm重写validate手动校验,或通过CommonsValidator扩展校验,同一个类可以有不同的校验内容,但不能校验子对象。Struts2 支持重写validate,也支持XWork校验框架进行校验。
      9 Action执行控制: Struts1支持每一个模块有单独的生命周期,但是模块中所有的Action必须享有相同的生命周期。 Struts2 支持拦截器栈为每一个Action创建不同的生命周期。 
      

  2.   

    struts2 似乎更加好一点,因为它可以节省很多代码。配置相对来说也比较简单一些,不过完全看楼主个人喜欢咯!就像我,我比较喜欢struts1 。
    另外要是做项目的话。得根据实际去做!
      

  3.   

    本质上是不一样的.!!~~当然struts2是由struts1和webwork整合改进而来的!~~原理上是webwork的进化而不是struts1...
      

  4.   

    现在基本都用struts2了,当时apache先出了struts 做得还不错占据了一定的市场份额,但后来weblogic出了另一个mvc的框架,做得比apache好,市场份额越来越多,apache就把那个纳入旗下,合作出了struts2,其实很多东西都是weblogic里面的。
      

  5.   

    是webwork不是weblogic中午刚吃过饭,有点迷糊