Could not obtain transaction-synchronized Session for current thread


在servlet-context中增加

<context:annotation-config />(有了<context:component-scan base-package="XXX.XXX" />就不用寫這個了)

<tx:annotation-driven/>

 還要增加xmlns 

xmlns:tx="http://www.springframework.org/schema/tx"

http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd

增加類@org.springframework.transaction.annotation.Transactional注釋

增加了bean(不加也可以運行)

<!-- 聲明式容器事務管理 ,transaction-manager指定事務管理器為transactionManager -->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED" />
<tx:method name="get*" propagation="REQUIRED" />
<tx:method name="*" read-only="true" />
</tx:attributes>
</tx:advice>
<aop:config expose-proxy="true">
<!-- 只對業務邏輯層實施事務 -->
<aop:pointcut id="txPointcut" expression="execution(* com.test.service..*.*(..))" />
<!-- Advisor定義,切入點和通知分別為txPointcut、txAdvice -->
<aop:advisor pointcut-ref="txPointcut" advice-ref="txAdvice"/>
</aop:config>

就可以了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM