報org.hibernate.HibernateException: No Session found for current thread異常的解決辦法


報錯是在當前線程沒有找到Session,導致無法使用session來對數據庫進行操作,經測試可能有以下原因引起:

1.配置文件中,關於事務的配置未將該類給包含進去(即該DAO所屬的包不在事務里)

知道了原因那么下面就好弄了,兩種解決方案:

1.在配置文件中將該類所屬的包加入到事務里

如上圖,expression里的所代表的就是事務所包含的package,你可以新增多個包掃描路徑,通過or連接

2.直接在報錯的DAO方法上加上@Transactional注解,這個看似比較簡單,但由於所屬的包都沒有添加事務,意味着這個包下所有DAO的方法都要加上這個注解,那就很繁瑣了

 


免責聲明!

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



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