mybatis框架操作数据库 设置延迟加载(懒加载)后报错:创建延时代理出错,空指针异常(解决方法)
具体问题:如果不设置延迟加载(懒加载),数据能读出来,设置延迟加载后,报错
Cause: org.apache.ibatis.executor.ExecutorException: Error creating lazy proxy. Cause: java.lang.NullPointerException
mybatis版本3.4.6
解决方法:
Mybatis-3.4.6.jar包换成最新的Mybatis-3.5.1.jar(如果配置日志了也建议换成最新的)
然后在Mabatis-config.xml中配置
<settings>
<!-- 打开延迟加载的开关 -->
<setting name="lazyLoadingEnabled" value="true" />
<!-- 将积极加载改为消息加载即按需加载 -->
<setting name="aggressiveLazyLoading" value="false" />
<!-- 指定哪个对象的方法触发一次延迟加载。默认值:equals,clone,hashCode,toString(如果不配置,使用println()会触发延迟加载) -->
<setting name="lazyLoadTriggerMethods" value="" />
</settings>
具体也就是改了这些,然后就可以开启延迟加载(懒加载),希望可以帮到你。如果你有更好的方法请评论留言@Me