亲宝软件园·资讯

展开

mybaitis的延迟加载

赟麟 人气:0

概念:延迟加载:用到的时候才加载

因为我们在多表查询是,效率不如单表快,多个单表查询,然后使用懒加载,完成

多表关联查询


什么情况下使用懒加载

mybaitis中的表关系是一对一或者一对多的时候

我们在一对多的时候,通常使用延迟加载啊,一对一的时候,使用立即加载。

我们在写sql时,如果使用多表关联查询,name跟延迟加载就没有关系了,我们要使用延迟加载,不能

使用多表关联查询


代码如下:

<resultMap id="parent" type="com.ssw.pojo.Setmeal">
<id column="id" property="id"/>
<result property="name" column="name"/>
<result column="code" property="code"/>
<result column="helpCode" property="helpCode"/>
<result column="sex" property="sex"/>
<result column="age" property="age"/>
<result column="price" property="price"/>
<result column="remark" property="remark"/>
<result column="attention" property="attention"/>
<result column="img" property="img"/>
</resultMap>
<resultMap id="setmeal" type="com.ssw.pojo.Setmeal" extends="parent">
<collection property="checkGroups"
ofType="com.ssw.pojo.CheckGroup"
select="com.ssw.dao.CheckGroupDao.findCheckGroup"
column="id"
></collection>
</resultMap>

<select id="findById" parameterType="int" resultMap="setmeal">
select * from t_setmeal where id=#{id}
</select>

加载全部内容

相关教程
猜你喜欢
用户评论