论坛首页 Java企业应用论坛

struts2+spring 自动装配的一点疑问

浏览 7038 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-11-05  
我用这个。。。
struts2-spring-plugin-2.0.11.jar
0 请登录后投票
   发表时间:2009-11-06  
楼主能否再解释下第一种"自动装备的方式"方式吗?
0 请登录后投票
   发表时间:2009-11-06  
自动装配是指在默认情况下,采用的是按照ID名字进行自动查找和注入
比如有一个loginAction,这个Action不在spring的文件中进行配置,仍然
采用struts的配置
<action name="loginAction" class="com.lk.loginAction" />

那么在spring配置文件中
<bean id="loginService" class="com.lk.service.loginService">
</bean>
可以写一个BaseAction
public class BaseAction
{
   private LoginService loginService;
   get方法
    set方法
}
public class LoginAction extends BaseAction
{
  
}
那么loginAction 可以直接使用 loginService
0 请登录后投票
   发表时间:2009-11-07  
pengjj2 写道
自动装配是指在默认情况下,采用的是按照ID名字进行自动查找和注入
比如有一个loginAction,这个Action不在spring的文件中进行配置,仍然
采用struts的配置
<action name="loginAction" class="com.lk.loginAction" />

那么在spring配置文件中
<bean id="loginService" class="com.lk.service.loginService">
</bean>
可以写一个BaseAction
public class BaseAction
{
   private LoginService loginService;
   get方法
    set方法
}
public class LoginAction extends BaseAction
{
  
}
那么loginAction 可以直接使用 loginService

这个BaseAction不需要在spring配置文件中配置吗?况且好像用struts2整合srping。web.xml中要加段话吧?
0 请登录后投票
   发表时间:2009-11-08  
黑暗浪子 写道
pengjj2 写道
自动装配是指在默认情况下,采用的是按照ID名字进行自动查找和注入
比如有一个loginAction,这个Action不在spring的文件中进行配置,仍然
采用struts的配置
<action name="loginAction" class="com.lk.loginAction" />

那么在spring配置文件中
<bean id="loginService" class="com.lk.service.loginService">
</bean>
可以写一个BaseAction
public class BaseAction
{
   private LoginService loginService;
   get方法
    set方法
}
public class LoginAction extends BaseAction
{
  
}
那么loginAction 可以直接使用 loginService

这个BaseAction不需要在spring配置文件中配置吗?况且好像用struts2整合srping。web.xml中要加段话吧?

不需要。至于struts2要整合spring ,在web.xml中配置的那段就不用贴了。地球人都知道
0 请登录后投票
   发表时间:2009-11-09  
pengjj2 写道
黑暗浪子 写道
pengjj2 写道
自动装配是指在默认情况下,采用的是按照ID名字进行自动查找和注入
比如有一个loginAction,这个Action不在spring的文件中进行配置,仍然
采用struts的配置
<action name="loginAction" class="com.lk.loginAction" />

那么在spring配置文件中
<bean id="loginService" class="com.lk.service.loginService">
</bean>
可以写一个BaseAction
public class BaseAction
{
   private LoginService loginService;
   get方法
    set方法
}
public class LoginAction extends BaseAction
{
  
}
那么loginAction 可以直接使用 loginService

这个BaseAction不需要在spring配置文件中配置吗?况且好像用struts2整合srping。web.xml中要加段话吧?

不需要。至于struts2要整合spring ,在web.xml中配置的那段就不用贴了。地球人都知道

这到不错,所有的service都可以在BaseAction中用getter和setter这样搞,不过如果这样,JUnit怎么测试这些继承BaseAction的action?还有,如果改动BaseAction的代码,对所有的action和services类的影响大不大呢?希望兄弟说明一下
0 请登录后投票
   发表时间:2009-11-09  
黑暗浪子 写道
pengjj2 写道
黑暗浪子 写道
pengjj2 写道
自动装配是指在默认情况下,采用的是按照ID名字进行自动查找和注入
比如有一个loginAction,这个Action不在spring的文件中进行配置,仍然
采用struts的配置
<action name="loginAction" class="com.lk.loginAction" />

那么在spring配置文件中
<bean id="loginService" class="com.lk.service.loginService">
</bean>
可以写一个BaseAction
public class BaseAction
{
   private LoginService loginService;
   get方法
    set方法
}
public class LoginAction extends BaseAction
{
  
}
那么loginAction 可以直接使用 loginService

这个BaseAction不需要在spring配置文件中配置吗?况且好像用struts2整合srping。web.xml中要加段话吧?

不需要。至于struts2要整合spring ,在web.xml中配置的那段就不用贴了。地球人都知道

这到不错,所有的service都可以在BaseAction中用getter和setter这样搞,不过如果这样,JUnit怎么测试这些继承BaseAction的action?还有,如果改动BaseAction的代码,对所有的action和services类的影响大不大呢?希望兄弟说明一下

这是肯定的啊。BaseAction作为一个基类,改动了,当然所有的Action有影响。不过这个BaseAction只是为了来注入 service.好像一次性把service注完了。基本就没什么改动了吧。
至于junit,我没弄过,但是据网上收集的资料,一般认为这种方式的缺点就在于
测试和AOP不方便。你可以试试。呵呵
0 请登录后投票
论坛首页 Java企业应用版

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