什么是延迟加载(懒加载)
resultMap中的association和collection标签具有延迟加载的功能。
延迟加载的意思是说,在关联查询时,利用延迟加载,先加载主信息。需要关联信息时再去按需加载关联信息。这样会大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。
延迟加载又叫懒加载,也叫按需加载。也就是说先加载主信息,在需要的时候,再去加载从信息。
在mybatis中,resultMap标签 的association标签和collection标签具有延迟加载的功能。
验证测试
先测试在没有配置延迟加载时,mybatis操作sql语句次数 OrdersMapper.mxl文件中查询订单与user表一对一的关系
核心
UserMapper.xml中
测试类中
使用懒加载
SqlMapConfig.xml配置文件中
OrdersMapper.xml文件中
在UserMapper.xml中
测试类中
原因是,代码中没有输出list中的相关信息,所以就没有继续执行sql语句