简单来说s1和s2是2个完全不同的东西,你不能这样子做比较的
[Quote = 引用LZ:]
struts1是对于同一请求使用相同的action, 
而 
struts2是对于每一个请求都实例化一个新的对象进行处理。 
[/Quote]
你觉得什么框架会改动这么大?
根本没得比s2是基于webwork的基础上加入了s1的元素而来的就像别人问你c和java哪个好,你答得上来么?问题太抽象了,也只能讨论下了

解决方案 »

  1.   

    谢谢回复先,我的意思可能没说明白,
    实际上我是想问类似s1和s2这两种线程模型,
    在处理web请求的时候哪种的效率比较好。
    貌似s1和s2也就是个示例,
    主要内容是想问java的效率问题。换种说法吧...
    比如我们把s1的实现修改了,
    也让它来一个请求就new一个action。这样的话哪种效率会好一些呢?学习ing...谢谢
      

  2.   

    下面说我一个菜鸟的个人看法。不要bs我:1.访问次数很多很频繁的时候:s1效率高,省资源
    访问次数一般的时候:两者差不多。还有一点,他们两者之间应该只是编译时的效率相差比较大,在处理用户请求时,效率应该相同的。
      

  3.   

    struts1是对于同一请求使用相同的action,

    struts2是对于每一个请求都实例化一个新的对象进行处理。 
    对于每一个请求,难道struts1就不需要实例化一个新的对象吗?不会在那一个对象中,同时处理几千个用户请求吧?那样好像就乱成一锅粥了
      

  4.   

    乱成一锅粥倒不会,
    因为所有的内容都是在那个execute方法中以型参的方式传入,
    所以每个请求的处理都是在这个execute的作用域中完成的。
    每个线程拥有自己的空间运行这个execute。所以不会有问题。
    (要是有问题也不会这样设计了)当然如果使用了类一级别的全局变量,就会乱成一锅...八宝粥。而且servlet在运行的时候已经编译成class在执行了,
    应该不存在编译时如何如何的问题,问题的重点应该是
    java虚拟机在实例化多个对象

    多个线程使用同一个对象的同样方法的问题。继续学习ing...