0
点赞
收藏
分享

微信扫一扫

MyBatis 懒加载


在mybatis中,resultMap标签 的association标签和collection标签具有延迟加载的功能。

查询所有订单信息和其用户信息

订单mapper类中定义通过userid查询用户的方法

public User findUserById(int id);

用户mapper类中定义查询所有Ordres的方法

public List<Orders> findOrdersById04_lazyload();

分别在其sql映射xml文件中规定sql语句

<select id="findUserById" parameterType="int" resultType="User">
select * from user where id=#{id}
</select>

<resultMap id="lazyloadingResultMap" type="Orders">
<id column="id" property="id"></id>
<result column="userid" property="user_id"/>
<result column="createtime" property="createtime"/>
<collection property="user" select="edu.ccit.cn.mapper.UserMapper.findUserById" column="user_id"></collection>

</resultMap>
<select id="findOrdersById04_lazyload" resultMap="lazyloadingResultMap">
select * from orders
</select>

MyBatis 懒加载_懒加载

在MyBatis全局配置文件中开启懒加载(默认关闭)

<settings>
<!-- 打印查询语句 -->
<setting name="logImpl" value="STDOUT_LOGGING" />
<!-- 允许懒加载 -->
<setting name="lazyLoadingEnabled" value="true"/>
</settings>


举报

相关推荐

0 条评论