我所使用的SpringMVC是基于注解的,Controller是用@Controller注解标记的,而service和dao都是用的@Component标记的,由于配置上的一点小失误导致事务没有加上去,所以才会提示FlushMode为只读。解决方法是,把service和Controller分开管理,不用通用的Component,这样在加载SpringMVC配置文件的时候就只实例化Controller对象,在加载spring配置文件的时候就只实例化service对象。总之,如果事务是加在service上,那么就需要把service和Controller加以区别,而dao对象在什么时候初始化都可以,可以继续使用通用的Component注解。
修改后的配置文件的写法如下:
SpringMVC配置文件:
<context:component-scan base-package="com.tiantian" >
<!-- 将service排除在外,意味着这个时候不初始化service -->
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
</context:component-scan>
spring配置文件:
<context:component-scan base-package="com.tiantian" >
<!-- 将controller排除在外,意味着这个时候不初始化controller -->
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>
分享到:
相关推荐
简单的springmvc包括拦截、session设置,超时跳转,还没利用到springmvc的注解,有熟悉注解的朋友望指教,谢谢
基于springMVC拦截session中的某个值,一般情况下用于拦截session中用户信息是否存在
springmvc案例源码 session 增删改查 登录案例 含有mybatis知识 适合出学制了解学习使用SpringMVC SSM学习框架
本篇文章主要介绍了springmvc控制登录用户session失效后跳转登录页面,session一旦失效就需要重新登陆,有兴趣的同学可以了解一下。
karaf中不同bundle之间session共享实现,将代码用maven打下包,放入karaf,即可提供服务,在需要session共享的bundle中配置filter即可。
springmvc+session+增删改查+登录案例
SpringMVC session的存值和取值
springMVC使用文档
主要介绍了SpringMVC拦截器实现监听session是否过期详解,还是比较不错的,这里分享给大家,供需要的朋友参考。
企业级开发-SpringMVC使用拦截器实现用户登录权限验证实验报告
spring4.3+hibernate4.3+springmvc+nginx+Redis实现session共享demo
本项目是基于spring4+springmvc+mybatis+redis缓存 注解方式以及spring-session共享session搭建的完整实例。
SpringMvc+JS实现基于session的国际化 提供整体实现原理,配置参数,以及前台如何切换
springMVC使用注解方式进行页面跳转
springmvc session
SpringMVC 使用JSON、XML视图,json-lib jackson,xstream castor,jibx jaxb2
springmvc所使用的jar,没有使用maven工具等人可以下载来玩玩
使用SessionListener+持久化Session+Springmvc拦截器实现单点登录
SpringMVC完整使用教程
主要介绍了SpringMVC整合SpringSession 实现session的实例代码,本文通过实例相结合的形式给大家介绍的非常详细,需要的朋友参考下吧