Mybatis报错:ExecutorException: Executor was closed

解决问题:Cause: org.apache.ibatis.executor.ExecutorException: Executor was closed

问题意思:执行人被关闭。
在这里插入图片描述
在业务层接口实现类只创建了一个sqlsession全局对象,在业务层每个操作方法中都调用了这个对象,在第一次调用后容易更改sqlSession对象,导致对象被关闭,随后在其他方法继续调用这个对象sqlSession已经被关闭了,不会创建新的sqlSession,只会在类加载时创建唯一一次,所以才会报执行人已经被关闭的错误。
这个问题的解决方法:在每个操作数据库的方法中都去定义一个SQLSession工厂对象。

修改之前的代码:
在这里插入图片描述
修改之后的代码:
在这里插入图片描述


版权声明:本文为li377650260原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。