free mybatis 不生效_关于 Mybatis 设置懒加载无效的问题
看了 mybatis 的教程,講到關(guān)于mybatis 的懶加載的設(shè)置:
只需要在 mybatis 的配置文件中設(shè)置兩個(gè)屬性就可以了:
但是經(jīng)過測(cè)試之后發(fā)現(xiàn)是無效的,經(jīng)過一番折騰,發(fā)現(xiàn)是因?yàn)槲以跍y(cè)試的時(shí)候,調(diào)用了查詢出來的對(duì)象的 toString 方法,所以觸發(fā)了一次懶加載:
EmployeeMapper mapper= session.getMapper(EmployeeMapper.class);
Employee employee= mapper.selectEmployee(1);
System.out.println(employee);
后來在配置文件中加入了這個(gè)設(shè)置:
再試一遍,問題解決了
附上文檔上的說明:
lazyLoadTriggerMethods:指定哪個(gè)對(duì)象的方法觸發(fā)一次延遲加載。默認(rèn)值:equals,clone,hashCode,toString
所以,當(dāng)我打印對(duì)象時(shí),由于觸發(fā)了 toString 方法,所以觸發(fā)了一次懶加載
Ps:在 Employee 中關(guān)聯(lián)了 Department 對(duì)象,但是為了測(cè)試懶加載,我在 Employee 的toString 方法中并沒有調(diào)用 Department 這個(gè)屬性
總結(jié)
以上是生活随笔為你收集整理的free mybatis 不生效_关于 Mybatis 设置懒加载无效的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: golang mac 环境变量_macO
- 下一篇: 大数据治理工程师_大数据治理关键技术解析