zoukankan      html  css  js  c++  java
  • Manual close is not allowed over a Spring managed SqlSession

      

      原因:SqlSessionTemplate你不可以手动关闭。SqlSessionTemplate是一个代理类,内部他会为每次请求创建线程安全的sqlsession,并与Spring进行集成.在你的方法调用完毕以后他会自动关闭的。(参考网上资料)

      如不设置为“prototype”模式(普通模式,每次新建一个bean),则Spring容器默认创建的bean都是“singleton ”单例模式,单例模式只会创建一个bean,只要容器不销毁退出,会一直存活。而sqlSessionTemplate是不能被手动关闭的,

      当处于单例模式的时候,强行停止tomcat应该等同于手动去关闭,而不是由容器自动销毁。这时候就会触发上述异常。而如果是“prototype”普通模式,每次新建一个bean,用完之后,容器自动垃圾回收,也就不是手动关闭了,故而不会触发异常

      解决:在Spring配置SqlSession的时候加上:scope=”prototype”

  • 相关阅读:
    HTTP状态码
    HTTP详解教程 / HTTP 响应头信息 HTTP 响应头信息
    HTTP请求方法
    HTTP 消息结构
    HTTP 简介
    Session 工作原理
    CSS 布局
    css float 浮动
    CSS 布局
    css position定位
  • 原文地址:https://www.cnblogs.com/Mr-xt/p/10019754.html
Copyright © 2011-2022 走看看