论坛首页 Java企业应用论坛

关于struts2结合spring 创建action的思考

浏览 18496 次
精华帖 (0) :: 良好帖 (2) :: 新手帖 (1) :: 隐藏帖 (11)
作者 正文
   发表时间:2010-08-05   最后修改:2010-08-05
kaowww153 写道
lydawen 写道
你要测action线程安全,定义一个实例变量,页面上给它个值,action里睡10秒,接着再用另外的值访问这个 action,输出值。

没必要啊,只要看他是不是单例就知道是否存在线程安全。

单例就线程不安全,这要看你怎么用你的业务逻辑是什么?
1 请登录后投票
   发表时间:2010-08-05  
kaowww153 写道
my_corner 写道
struts2本身设计就是action非单例的,拦截器是单例的,你强行把action做成单例的没有问题??

你这问的我想哭了,我是说struts2给spring托管时默认就是单例吗,不是强行做成单例。

默认托管??struts2-spring-pluginXXX.jar,struts插件,不用在spring中写任何有关action的配置。自己找来看看代码。
0 请登录后投票
   发表时间:2010-08-05  
my_corner 写道
kaowww153 写道
lydawen 写道
你要测action线程安全,定义一个实例变量,页面上给它个值,action里睡10秒,接着再用另外的值访问这个 action,输出值。

没必要啊,只要看他是不是单例就知道是否存在线程安全。

单例就线程不安全,这要看你怎么用你的业务逻辑是什么?

0 请登录后投票
   发表时间:2010-08-05  
# @Controller @Scope("prototype") 
# public class TestAction extends BaseActionSupport { 
# ...... 
# }
这样行么?
0 请登录后投票
   发表时间:2010-08-05   最后修改:2010-08-05
my_corner 写道
kaowww153 写道
my_corner 写道
struts2本身设计就是action非单例的,拦截器是单例的,你强行把action做成单例的没有问题??

你这问的我想哭了,我是说struts2给spring托管时默认就是单例吗,不是强行做成单例。

默认托管??struts2-spring-pluginXXX.jar,struts插件,不用在spring中写任何有关action的配置。自己找来看看代码。

你这话写的业余了点吧。<bean id="showGoodsAction"
class="com.test.struts2.action.ShowGoodsAction"
scope="prototype">
<property name="goodsService" ref="goodsService"></property>
</bean>
你不配不代表别人不配吧。
0 请登录后投票
   发表时间:2010-08-05  
my_corner 写道
kaowww153 写道
lydawen 写道
你要测action线程安全,定义一个实例变量,页面上给它个值,action里睡10秒,接着再用另外的值访问这个 action,输出值。

没必要啊,只要看他是不是单例就知道是否存在线程安全。

单例就线程不安全,这要看你怎么用你的业务逻辑是什么?

你这扯远了,我指的是仅仅判断action是否单例,你扯业务干啥啊。
0 请登录后投票
   发表时间:2010-08-05   最后修改:2010-08-05
weir2009 写道
# @Controller @Scope("prototype") 
# public class TestAction extends BaseActionSupport { 
# ...... 
# }
这样行么?

这位终于说到点子上了。
struts2如果是用的注解的话就可以不用@Scope("prototype")了  也是每次new的action
0 请登录后投票
   发表时间:2010-08-05  
kaowww153 写道
weir2009 写道
# @Controller @Scope("prototype") 
# public class TestAction extends BaseActionSupport { 
# ...... 
# }
这样行么?

这位终于说到点子上了。
struts2如果是用的注解的话就可以不用@Scope("prototype")了  也是每次new的action

@Controller
public class TestAction extends BaseActionSupport { 
...... 
}
这样也可以呀。
0 请登录后投票
   发表时间:2010-08-05  
weir2009 写道
kaowww153 写道
weir2009 写道
# @Controller @Scope("prototype") 
# public class TestAction extends BaseActionSupport { 
# ...... 
# }
这样行么?

这位终于说到点子上了。
struts2如果是用的注解的话就可以不用@Scope("prototype")了  也是每次new的action

@Controller
public class TestAction extends BaseActionSupport { 
...... 
}
这样也可以呀。

前题是你的struts2用的注解方式
0 请登录后投票
   发表时间:2010-08-05  
public class TestAction extends BaseAction { 
     @Autowired 
     private UserService userService; 
     @Action("test") 
     public String test() throws Exception { 
         System.out.println("action HashCode:"+this.hashCode()); 
         userService.getUserName();       
         return "success"; 
   } 
  }
你这action跟我的action:
@Controller
public class TestAction extends BaseActionSupport {
......
}
一样么?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics