Spring事務不生效的解決過程
今天使用Spring+ibatis+SqlServer進行事務配置時,總是不生效,以下是解決流程,以備忘。
1、我以為是資料庫的問題,之前用的是mysql,只有InnoDB引擎支援事務;後來想想,如果SqlServer2008的預設引擎都不支援事務的話,那這款產品還有什麼生命力?應該不是資料庫的問題。
2、有人說org.springframework.jdbc.datasource.DataSourceTransactionManager不支援事務管理,後來經查詢,不是這個問題。
3、還有人說事務管理的地方一定要丟擲RuntimeExcepion,經測試,也不是,排除!
4、有點想當然地認為配置檔案的方式沒生效,是否有快取或者沒編譯到目標資料夾等等,於是將配置式改為宣告式,還是不行!
4、將@Service註解去掉,在applicationContext.xml檔案中配置Service的bean,發現居然成功了!忽然想起上次在配置攔截器的時候也經常不生效,原因是applicationContext.xml的父容器先於Servlet的子容器生效,將Service提前載入了。於是嘗試在網上搜尋解決方案,最終ok了,解決辦法如下:
applicationContext.xml檔案中的如下配置:
<context:component-scan base-package="com.cignacmb">
<context:exclude-filtertype="annotation"
</context:component-scan>
和 applicationContext-mvc.xml檔案中的如下配置:
<context:component-scanbase-package="com.cignacmb">
<context:include-filter type="annotation"expression="org.springframework.stereotype.Controller"
<context:exclude-filter type="annotation"expression="org.springframework.stereotype.Service" />
</context:component-scan>
具體帖子見:http://icanfly.iteye.com/blog/778401
相關推薦
Spring事務不生效的解決過程
今天使用Spring+ibatis+SqlServer進行事務配置時,總是不生效,以下是解決流程,以備忘。 1、我以為是資料庫的問題,之前用的是mysql,只有InnoDB引擎支援事務;後來想想,如果SqlServer2008的預設引擎都不支援事務的話,那這款產品還有什麼
Spring事務不生效問題彙總
在實際專案開發中,經常會由於配置錯誤或使用不當,導致spring事務管理不生效。如下總結了幾點事務不生效的情況: 1、確認建立的mysql資料庫表引擎是InnoDB,MyISAM不支援事務。 2、確認呼叫的類是由spring容器管理的代理類。
Spring+Mybatis @Transactional註解事務不生效
排除 context mage prop span 文件 action aso eight @Transactional聲明式事務配置: <bean id="transactionManager" class="org.springframework.j
spring 事務處理中,同一個類中:A方法(無事務)調B方法(有事務),事務不生效問題
public class MyEntry implements IBaseService{ public String A(String jsonStr) throws Exception{ UserInfo user = null; UserDetail userDetail = nul
spring mvc 註解事務不生效
spring mvc註解事務配置很簡單 下面簡短的程式碼便可以解決 註解事務不生效問題。 我是 在web.xml檔案<servlet-name>指向的首先載入的spring配置檔案中加以下註解。這樣好像不夠優雅但沒嘗試更好的方法。
Spring service本類中方法呼叫另一個方法事務不生效問題
前些日子一朋友在需要在目標物件中進行自我呼叫,且需要實施相應的事務定義,且網上的一種通過BeanPostProcessor的解決方案是存在問題的。因此專門寫此篇帖子分析why。 1、預備知識 使用AOP 代理後的方法呼叫執行流程,如圖所示 也就是說我們首先呼叫的是
spring 本類中方法呼叫另外一個方法事務不生效
1、在spring配置檔案中新增 <aop:aspectj-autoproxy expose-proxy="true"/&g
supervisord stdout_logfile 不生效解決辦法
文件 cto path stream app dir flow art pri 配置文件 [program:p2p_recv] command = /ebs_data/appenv3/bin/python xmpp_p2p_recv.pyc process_name =
Mysql grant all privileges on ...不生效解決方案
.com nts 本地 all 圖片 info 技術分享 原因 虛擬機 情景:我在mac的終端下用ssh操作虛擬機中的centos,mysql運行在centos中 mysql -u root -p 用root登錄mysql後 使用 grant all privileg
【IDEA】IDEA中maven項目pom.xml依賴不生效解決
code CI dea color ogl end pen 分享圖片 關系 問題: 今天在web項目中需要引入poi相關jar包。查看之下才發現pom.xml中的依賴雖然已經下載到了本地倉庫 repository,但是卻沒有加入到項目路徑的 Extenal Libra
Servlet4.0 註解不生效解決
bubuko 不生效 let TE 一個 路勁 mage xxxxx 解決 當我們創建好一個4.0的servlet 生成的註解大概是這樣 name=xxxxx 默認的是不具有效果的 你可以有兩種方式 1.去掉屬性name,3.0就是這樣子的 2.非要
vue2.0 element-ui中el-upload的before-upload方法返回false時submit()不生效解決方法
tip child 是我 pre gre 調用 2.0 技術 lis 我要實現的功能是在上傳文件之前校驗是否表格中存在重復的數據,有的話,需要彈窗提示是否覆蓋,確認之後繼續上傳,取消之後,就不再上傳。 項目中用的element-ui是V1.4.3 <el-upload
Spring 事務不起作用的幾種情況
service() true bean 每次 語句 imp 作用 stc current 1:必須是runtime異常,方法不要有try catch語句。 2:service 中 @Service() public class AServiceImpl1 imple
Windows中Nginx配置nginx.conf不生效解決方法
ps: 樂優商城的圖片上傳中遇到的坑,nginx.conf一直沒有生效,折磨了幾個小時,終於搞定了。 附 nginx.conf: #user nobody; worker_processes 1; #error_log lo
thinkphp3.2在home模組下的config設定的不生效解決方法
在全域性配置檔案Common/Conf/config.php 和Home模組配置檔案Home/Conf/config.php裡面分別新增程式碼: 'MODULE_ALLOW_LIST' => array ('Home','Admin'), 'DEFAULT_MODULE' =&g
windows環境下,git配置祕鑰不生效解決
使用git過程中會出現反覆讓你輸入使用者名稱和密碼的情況,比較煩嗎,因此我們可以配置SSH KEY,讓我們在拉取和提交程式碼是不用輸入密碼。但是配置過程中可以出現配置好的祕鑰不生效的情況。 1.在搭建的git網站刪除原有key,如圖 2.配置使用者名稱和郵箱,在git
html 引入js不生效 解決辦法
1.問題描述,js放在<head>裡面不生效 js存放路徑/xxx/src/main/webapp/js/common.js 頁面存放地址:/xxx/src/main/webapp/WEB-INF/xxx/xxx/xxx/xxx
PageHelper在springboot中不生效解決方法
原因: mava引入的包為: <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehel
security中jsr250不生效解決辦法
在springSecurity.xml檔案中開啟註解支援,springSecurity中預設是關閉的: <security:global-method-security jsr250-annotations=“enabled”/> 在pom檔案中新增
SpringBoot之logback-spring.xml不生效
一、前言 做新應用就是這樣,會遇到各種問題,昨天剛解決了載入某一個類時候丟擲了class is not visible from class loader的問題,今天就有遇到了日誌檔案找不到的問題,還是和二方庫有關的,下面就一一道來。 二、問題產生 正常情況下在 src/main/resou