美文网首页
Mybatis 懒加载

Mybatis 懒加载

作者: tingshuo123 | 来源:发表于2018-07-12 22:18 被阅读10次

开启懒加载配置

config.xml

    <settings>
        <!-- 配置log4j日志信息 -->
        <setting name="logImpl" value="LOG4J"></setting>
        
        <!-- 懒加载 配置 -->
        <setting name="lazyLoadingEnabled" value="true"></setting>
        <setting name="aggressiveLazyLoading" value="true"></setting>
    </settings>

实体bean

BorrowBean

public class BorrowBean {
    private int id;
    private Date date;
    private int num;
    
    // 书籍
    private BookBean book;
    // 用户
    private UserBean user;
    // ... get set 方法
}

BooKBean

public class BookBean {
    private int id;
    private String name;
    private String picture;
    private String author;
    private String press;
    private Date time;
    private int price;
    private int stock;
    private String describe;
    // ... get set 方法
}

UserBean

public class UserBean {
    private int id;
    private String name;
    private String pwd;
    
    // 一个用户借多本图书
    private List<BookBean> booklist;
    // ... get set 方法
}

配置 Mapper.xml

BorrowMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.project.dao.IBorrowDao">
    <select id="findByBookId" parameterType="int" resultMap="borrowResultMap">
        SELECT * FROM t_ub WHERE ub_b_id = #{id};
    </select>
    <!-- 将查询结果字段,映射成BorrowBean 属性 -->
    <resultMap id="borrowResultMap" type="BorrowBean">
        <!-- 主键字段 -->
        <id property="id" column="ub_id" />
        <!-- 其它字段 -->
        <result property="date" column="ub_date"/>
        <result property="num" column="ub_num"/>
        
        <!-- 
        懒加载  --通过 ub_u_iu 用 select 属性指定的 sql 查询数据库,
        将结果封装成UsreBean对象,赋给 user
        注意:column指定的字段类型要与指定sql接收参数一样
        JavaType要与sql语句返回的实体bean要一样
         -->
        <association property="user" javaType="UserBean" column="ub_u_id" 
          select="com.project.UserMapper.findById">
        </association>
    </resultMap>
</mapper>

相关文章

  • Mybatis 懒加载

    开启懒加载配置 config.xml 实体bean BorrowBean BooKBean UserBean 配置...

  • MyBatis懒加载

    在总配置文件中写入以下代码: 懒加载只针对嵌套查询,因为嵌套结果是通过一条语句直接将所有的所需要的数据全都查询到。

  • mybatis懒加载(延迟加载)

    延迟加载 MyBatis中的延迟加载,也称为懒加载,是指在进行表的关联查询时,按照设置延迟规则推迟对关联对象的se...

  • IDEA 调试 Mybatis源码的一个小坑

    IDEA 调试 Mybatis源码的一个小坑 问题描述 在调试Mybatis懒加载功能相关的代码时,不主动调用懒加...

  • mybatis 延迟加载

    mybatis 延迟加载 什么是延迟加载 延迟加载又叫懒加载,也叫按需加载,也就是说先加载主信息,需要的时候,再去...

  • mybatis中的延迟加载(三)

    mybatis中的延迟加载 什么是延迟加载在真正使用数据时才发起查询,不用的时候不查询。按需加载(懒加载) 什么是...

  • Mybatis延迟加载

    延迟加载的含义 延迟加载又叫按需查询(懒加载),mybatis支持延迟加载,我们希望一次性把常用的级联数据通过sq...

  • 关联关系查询(第二讲)

    延迟加载 MyBatis 中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟规则推迟对关联对象的 se...

  • 4.Mybatis-04 Mybatis 延迟加载策略,缓存及

    主要内容 Mybatis 延迟加载策略 Mybatis 缓存 Mybatis 注解开发 Mybatis 延迟加载策...

  • mybatis_collection用法,懒加载,一对多

    mybatis_collection用法,懒加载,一对多 需求:li_store商城主表,li_banner,li...

网友评论

      本文标题:Mybatis 懒加载

      本文链接:https://www.haomeiwen.com/subject/vdmrpftx.html