spring mvc 給Controller新增事務不成功的原因
spring-context.xml
<context:component-scan base-package="com.freecg.green007"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan>
spring-mvc.xml
<context:component-scan base-package="com.freecg.green007">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service" />
spring父容器不掃描@Controller,MVC子容器不掃描@Service.
事務配置如下:
spring-context.xml
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="false" />
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" /> </bean>
因為spring容器和spring-mvc是父子容器,spring容器會先載入,如果此時掃描了Controller,但未掃描到Service。
spring事務配置檔案還有上下文都是通過org.springframework.web.context.ContextLoaderListener載入的,而spring MVC的action是通過org.springframework.web.servlet.DispatcherServlet載入的 。
web是先啟動ContextLoaderListener後啟動DispatcherServlet
結論:讓spring掃描註冊Service實現類,讓MVC掃描註冊Controller,此時spring父容器已經註冊Service為Bean,此時事務可以得到正常配置。
相關推薦
spring mvc 給Controller新增事務不成功的原因
掃描配置如下:spring-context.xml <context:component-scan base-package="com.freecg.green007"> <context:exclude-filter type="annotat
Spring AOP 對Spring MVC的Controller切面攔截不起作用
1 問題描述 當使用Spring AOP對Controller層的Controller類的方法進行切面攔截,不起作用。AOP配置沒有任何問題。 2 排查過程 Spring AOP配置沒有任何問題;【正常】 斷點除錯:Spring原始碼斷點除錯,在呼叫Controller方法時,Controller的例項被JD
Spring MVC中Controller如何將資料返回給頁面
要實現Controller返回資料給頁面,Spring MVC 提供了以下幾種途徑: ModelAndView:將檢視和資料封裝成ModelAndView物件,作為方法的返回值,資料最終會存到HttpServletRequest物件中! Model物件:通過給方法新增引用
如何給Spring MVC的action加上事務
其實就是一個載入順序的問題 首先使用了spring MVC的專案是不需要配置action bean,而是通過spring mvc的配置檔案進行掃描註解載入的,spring事務配置檔案還有上下文都是通過org.springframework.web.context.Con
Spring MVC 從 Controller向頁面傳值的方式
用戶 () 傳參數 control let att model enter 設定 Spring MVC 從 Controller向頁面傳值的方式 在實際開發中,Controller取得數據(可以在Controller中處理,當然也可以來源於業務邏輯層),傳給頁面,常用的方
spring MVC框架controller間跳轉失效問題
info control 代碼 img nbsp ont response 返回 生效 今天調試時,發現redirect:url 不生效,訪問直接返回這串字符串。忘了找了兩個來小時,才找到正確的原因。 原來是因為我代碼開始用的是@RestController, 用了這個後,
Spring MVC @Transactional註解方式事務失效的解決辦法
前文提到,最新換了框架,新專案用SpringMVC + Spring JdbcTemplate。搭框架時,發現了一個事務無法正常回滾的問題,記錄如下:首先展示問題:Spring applicationContext.xml配置:<beanid="dataSource"cl
【OpenCV3】如何給影象新增(不)透明度通道
透明度通道,又叫alpha通道,做用於記錄影象的透明度資訊。具體參照【百度百科】“alpha通道”中的介紹。透明度確切的說應該叫不透明度(Opacity),取最小值0時,表示完全透明;取最大值255時,表示完全不透明;取值越大表示越不透明。通常遇到的影象如bmp影象、jpg影
Spring Boot maven profile 替換不成功原因?
配置logback.xml替換的時候,發現替換不成功 <property name="LOG_FILE_HOME" value="${log.root.path}" /> 期望
spring mvc中controller怎麼接收頁面表單提交的資料
轉自:http://blog.csdn.net/wujiaqi168/article/details/41957187 1、定義一個類,該類的欄位要包含表單中所有input的name對應的值,並且在類中為對應的欄位生成getter 與setter方法 2、在對應的c
Spring MVC中 ModelAndView返回頁面不正確
問題和解決 UserController.java檔案 @Controller @RequestMapping("user") public class UserController { @RequestMapping("/test3") public Model
spring mvc的controller識別同一個form表單的多個submit按鈕問題以及相關處理
之前只寫過spring mvc的controller處理form表單中一個submit的程式碼,今天遇到了form表單中存在多個submit,然後自己百度了一下,找到了解決方案,不過又出現了其他錯誤,現在來總結一下。 sp
spring mvc中controller使用介紹
SpringMVC是一個基於DispatcherServlet的MVC框架,每一個請求最先訪問的都是DispatcherServlet,DispatcherServlet負責轉發每一個Request請求給相應的Handler,Handler處理以後再返回相應的檢視(View
spring mvc請求controller訪問方式
1.一個Controller裡含有不同的請求url @Controller //類似Struts的Action public class TestController { @RequestMapping("test/login.do") // 請求url地址對
spring MVC中controller層和service層的junit4測試
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; import static org.springframework.test.web.servlet.result.MockMvcResul
spring mvc使用@Controller返回的html檢視
First the DispatcherServlet is invoked by the Servlet Container. The DispatcherServlet finds a mapping which maps to the home method of
Spring MVC中Controller如何進行重定向
Spring MVC中進行重定向,本人知道的有兩種方式: 方法返回的URI(相對路徑)中加上"redirect:"字首,宣告要重定向到該地址 使用HttpServletResponse物件進行重定向
記錄一下JFinal 在controller 新增事務處理
在controller新增事務; @Before(value = { ErrorInterceptor.class, Tx.class }) 前面是攔截器處理自定義拋異常 攔截器把錯誤資訊顯示到頁面 這種事務的寫法 如果程式碼加了try 事務是不起作用的 必須手動拋
Spring+Spring MVC+Mybatis整合配置AOP不生效的解決方案以及Bean初始化重複載入兩次(疑難雜症)
之前上班做spring+spring mvc +hibernate開發, 2年之久不做想複習一下aop的使用,結果配置遇見aop不生效,解決而記錄! 先上程式碼直接看反例效果會明顯: 首先看一下我的程式碼的包路徑: 接下來看Spring-MVC的配置檔案部分程式碼:
Spring MVC 3.x 和 JDK8不相容
查了好幾天,竟然是因為Spring MVC3.x和JDK 8不相容!! 又一次被自己的強迫症坑了。 異常資訊如下 四月 19, 2016 10:02:09 下午 org.apache.catalina.core.AprLifecycleListener init 資訊: