public class LoginAction extends ActionSupport{
private LoginService loginService;
public void setLoginService(LoginService loginService) {
System.out.println("init Service......");
this.loginService = loginService;
}
spring配置
<bean id="loginService" class="org.xxxxx.services.impl.LoginServiceImpl"></bean>
<bean id="loginAction" class="org.xxxxx.action.LoginAction">
</bean>
struts配置
<action name="login" class="org.xxxxx.action.LoginAction">
<result name="success">/result.jsp</result>
<result name="error">/login.jsp</result>
</action>
注意看以上两个红线部分,在struts.xml中action指定的class像上面这种方式指定全类路径名的话,这时,不论spring配置文件中的<bean id="loginAction" class="org.xxxxx.action.LoginAction"></bean>有没有指定<property name="loginService" ref="loginService"/>,只要有<bean id="loginService" .../>存在,并且这个ID的名字与Action中成员bean的名字一致,当实例化Action类时,会一并将loginService的实例注入
如果<action name="login" class="loginAction">这里的class指定spring配置文件中的bean的id,则不会出现loginService自动注入问题,而是根据<bean id="loginAction" class="org.xxxxx.action.LoginAction"></bean>有没有指定<property name="loginService" ref="loginService"/>来决定,有<property name="loginService" ref="loginService"/>的指定,则实例化Action类时,会一并将loginService实例注入,没有配置property,loginService则为空
分享到:
相关推荐
4. **Spring插件**:在Struts2中使用Spring插件(struts2-spring-plugin),这个插件能够帮助Struts2与Spring进行交互,自动将Action类实例化并注入依赖。 5. **Action类**:Action类需要实现Spring的`org.spring...
**Struts2与Spring的集成** 主要是通过Spring插件实现,这使得Action类可以作为Spring的bean管理,实现依赖注入。这样,Action类可以直接注入服务层(Service)和DAO(数据访问对象)层的bean,简化了代码结构,增强...
在整合中,我们可以通过Spring配置文件来声明Struts2 Action类的bean,并指定其依赖的服务类。 2. **Spring的Action类管理**:在整合后,Struts2的Action类不再直接创建服务类的实例,而是由Spring容器提供。这样...
在Java Web开发中,将Struts2与Spring进行集成,可以充分利用两者的优势,实现更好的业务逻辑管理和控制流分离。集成过程主要包括以下几个步骤: 1. **引入依赖**:首先,在项目中添加Struts2和Spring的相关库,...
集成Struts2和Spring主要是为了将Spring的依赖注入特性引入到Struts2的Action中,这样Action类可以直接依赖于Spring管理的Bean,无需在Action类中进行实例化。以下是集成的几个关键步骤: 1. **配置Spring**:首先...
**Struts2与Spring的集成** 在没有Struts2-Spring-Plugin的情况下,要在Struts2应用中使用Spring,需要手动配置Action类与Spring Bean之间的关联。而有了这个插件,配置过程变得更加简单。以下是Struts2-Spring-...
Struts2-Spring-Plugin-2.3.4.jar 是一个专门为 Struts 2 框架和 Spring 框架整合而设计的插件,主要用于处理 Struts 2 和 Spring 之间的集成问题。在Java Web开发中,这两个框架经常一起使用,Spring 提供了依赖...
通常,我们会在Spring中定义Bean,然后在Struts2的Action类中通过@Autowired注解注入这些Bean,从而实现业务逻辑的执行。另外,Struts2的动作类也可以通过Spring管理,这样可以利用Spring的生命周期管理、事务管理等...
4. **Struts2与Spring集成**:为了结合这两个框架的优点,我们需要配置Struts2的Spring插件。这将使Struts2能够从Spring容器中获取Action实例,实现Action的依赖注入。配置通常包括修改`struts.xml`中的`<package>`...
3. **配置集成**:在Struts2的配置文件中,我们需要声明一个Struts2-Spring插件,它允许Struts2与Spring进行通信。同时,在Spring的配置文件中,需要定义Action类的bean,并配置好相关属性和依赖。 4. **AOP结合**...
3. **Struts2 Spring插件**:Struts2提供了专门的Spring插件,如`struts2-spring-plugin.jar`,用于在Struts2中管理和注入Spring的Bean。这个插件使得我们可以在Struts2的Action类中直接使用Spring管理的Bean,无需...
- `StrutsSpring`可能包含一个简单的整合示例,包括Struts2的配置文件、Spring的配置文件以及相关的Action类和业务接口。 - 示例可能会展示如何配置Action类,如何在Spring中定义bean,以及如何在Struts2中引用...
3. **Action配置**:在Struts2的配置文件(struts.xml)中,我们需要声明Action类,并指定它与Spring的Bean ID关联。这样,当请求到达时,Struts2会通过Spring获取到Action实例。 4. **Spring配置**:在Spring的配置...
5. **Action与Spring的交互**:在Action类中,可以直接通过@Autowired注入的bean来调用业务服务方法。这种方式简化了Action类的构造函数,避免了手动设置依赖。 6. **拦截器配置**:Struts2允许使用拦截器来增强...
对于Struts2和Spring的配置,我们需要在`struts.xml`和`spring-context.xml`文件中进行相应的设置,例如定义Action类、配置Spring Bean以及指定Struts2与Spring的整合方式。同时,确保web.xml文件中配置了...
这个插件允许我们在Struts2的配置中直接引用Spring管理的bean,避免了在Action类中手动创建服务实例。 3. **Action类的配置**:在Struts2的配置文件(通常是`struts.xml`或`struts-plugin.xml`)中,我们不再直接...
- Struts2与Hibernate集成,通常在Action中通过SessionFactory获取Session,执行数据库操作,但这种方式不推荐,因为容易导致事务管理复杂。推荐使用Spring的Hibernate支持来整合。 5. **jar包的使用**: - 在SSH...
总的来说,Struts2-Spring-Plugin-2.2.3.jar是Struts2与Spring集成的重要工具,它简化了两者之间的结合,使得开发者可以充分利用Spring的DI和AOP特性,同时利用Struts2的MVC优势,提高Java Web应用的开发效率和质量...
除了Action类,Struts2 Spring Plugin还允许我们在拦截器、结果类型和其他Struts2组件中使用Spring注入。这大大增强了Struts2的应用能力,简化了复杂应用的构建过程。 压缩包中的其他文件如"msbase.jar"、...
Struts2-Spring-Plugin-2.0.11.1.jar 是一个专门为Apache Struts2框架设计的插件,其主要目的是实现Struts2与Spring框架的集成。这个插件使得开发者能够在Struts2应用中无缝地使用Spring进行依赖注入(Dependency ...