struts.xml文件:
<action name="login" class="memberAction" method="login">
<result name="loginSuc">${nextPage}</result>
<result name="loginFail">login.jsp</result>
</action>
spring的applicationcontext.xml配置文件:
//action
<bean id="memberAction"
class="com.edgar.s2shlogin.web.action.MemberAction" scope="prototype">
<property name="memberService">
<ref bean="memberService" />
</property>
</bean>
<!-- 自动代理对象 -->
<bean id="autoProxy"
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="proxyTargetClass" value="true"/> //注意这里!
<property name="beanNames">
<list>
<value>*Action</value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>checkArgumentsAdvice</value>
<value>exceptionLogger</value>
</list>
</property>
</bean>
当struts2的action没有配置动态方法调用的时候,运行正常。当使用动态方法调用的时候,运行时报
类似: NoSuchMethodException:$Proxy6.login() 的错误,解决办法是使用CGLib实现aop,加上
<property name="proxyTargetClass" value="true"/>
如果使用 aop:方式的话,加上<aop:aspectj-autoproxy proxy-target-class="true"/>
相关推荐
4. **连接Struts2和Spring**:在Struts2的配置文件(如`struts.xml`)中,我们需要配置Action类以使用Spring的依赖注入,这样Spring才能识别并应用AOP代理。 在实际的项目中,我们还需要考虑如何处理自定义参数。...
- Action类:Struts2中的控制器,处理请求并转发到相应的视图。 - JSP页面:展示数据,通常与Action交互。 通过这个案例,你可以学习如何整合这些框架,理解它们之间的协作方式,以及如何在实际项目中利用它们的...
它可能包含了Spring的bean定义,或者是在Struts2中使用Spring时需要的特定配置。具体用途需要根据文件内容来解读。 总之,Spring与Struts2的整合能够提升应用的灵活性和可扩展性,而AOP的使用则进一步增强了代码的...
实际的范例应用会包含详细的配置文件、Action类、Service类和DAO类的代码,以及如何在这些类中使用Struts2、Hibernate和Spring的示例。这些代码实例将帮助开发者更好地理解和掌握三者整合的技巧,提升开发效率。
在论坛系统中,Spring作为整个应用的“胶水”,将Struts 2、Hibernate以及其他组件紧密集成在一起。它管理对象的生命周期,处理事务,并通过AOP实现如日志记录、权限验证等横切关注点。 4. **整合三大框架**:...
4. **整合配置**:整合Struts2、Hibernate和Spring时,需要在Struts2的配置文件中引入Spring插件,使得Action实例由Spring容器管理。同时,还需要配置Hibernate SessionFactory,以便在Spring中管理数据库会话。 5....
4. **整合Spring和Struts2**:使用Spring的Struts2插件,使Spring管理的Bean可以直接在Struts2 Action中注入使用。 5. **整合Spring和MyBatis**:通过Spring的SqlSessionFactoryBean,将MyBatis的SqlSessionTemplate...
在这个例子中,Spring4用于管理对象的生命周期和依赖关系,同时,AOP用于实现代码的解耦,比如在登录操作中,可以使用AOP来实现登录日志记录或权限检查。 3. **MyBatis3**:MyBatis是一个持久层框架,它允许开发者...
在实际项目中,通常使用Spring来管理Struts2的Action实例,通过Spring的DI实现Action类的依赖注入。同时,Spring负责管理Hibernate SessionFactory,提供透明的事务管理。在Struts2的Action执行完毕后,可以通过...
Struts2、Hibernate和Spring是Java开发中三大主流框架,它们各自在Web应用程序的不同层面上发挥作用,而将它们整合在一起,通常称为SSH(Struts2、Spring、Hibernate)或S2SH,可以构建出功能强大、结构清晰的企业级...
整合Struts 2 和Spring 后,我们可以在Spring 配置文件中定义事务规则,并让Spring 自动管理Action 中的事务,使得代码更加简洁,降低出错率。 3. **AOP(Aspect-Oriented Programming, 面向切面编程)**:Spring ...
Struts2和Spring是两个非常流行的Java开源框架,它们在企业级应用开发中被广泛使用。Struts2作为MVC框架负责控制层,而Spring则提供了全面的依赖注入(DI)和面向切面编程(AOP)功能。将这两者集成可以实现强大的...
在Struts2与Spring集成时,我们需要在`struts.xml`中声明Action类,并通过Spring插件将其实例化,这样就可以利用Spring的依赖注入特性。 接下来是Hibernate的配置。`hibernate.cfg.xml`文件定义了数据库连接信息,...
在没有Struts2-Spring-Plugin的情况下,要在Struts2应用中使用Spring,需要手动配置Action类与Spring Bean之间的关联。而有了这个插件,配置过程变得更加简单。以下是Struts2-Spring-Plugin-2.2.1.jar提供的主要功能...
4. **Spring插件**:在Struts2中使用Spring插件(struts2-spring-plugin),这个插件能够帮助Struts2与Spring进行交互,自动将Action类实例化并注入依赖。 5. **Action类**:Action类需要实现Spring的`org.spring...
### Struts2框架整合Spring框架在文件上传下载中的应用 #### 一、引言 随着互联网技术的迅速发展,Web应用程序的功能越来越丰富,文件的上传下载功能已成为许多Web应用不可或缺的一部分。例如,在博客、电子邮件...
5. 在Struts2的配置中引入Spring插件,使Action通过Spring容器实例化。 整合SSH可以创建松耦合、模块化的应用程序,提高开发效率,同时便于后期的维护和扩展。然而,随着Spring Boot的兴起,现在的趋势更多地转向...
2. **Action类**:在Struts2中,Action类是业务逻辑的载体。你需要创建一个Action类,继承自`ActionSupport`或自定义的Action父类,并重写`execute()`方法。Action类可以通过注解或XML配置来绑定请求参数。 3. **...
在这个模块中,用户注册信息可能通过Struts2的Action处理后,通过Spring的Service层调用Hibernate来与数据库交互,完成用户信息的存储。 学习这个整合项目,开发者可以深入理解三大框架如何协同工作,提高代码的可...
在论坛系统中,Struts 2 可以用来处理用户的各种操作,如登录、发帖、回复、浏览等,通过Action类定义这些操作,并通过配置文件(struts.xml)来配置URL与Action的映射关系。此外,Struts 2 还提供强大的拦截器机制...