Mybatis学习日志(一)

MyBatis 可以简化 JDBC 操作,实现数据的持久化。 MyBatis 是一种ORM 产品, ORM的实现。ORM: Objective Relational Mapping (ORM即可以将一个person对象和一个person表对应起来)。 MyBatis 下载与安装 先进入MyBatis官网 https://mybatis.org/mybatis-3/zh/index.html 进入官 […]

Mybatis缓存

Mybatis的一级缓存是指Session缓存。一级缓存的作用域默认是一个SqlSession。Mybatis默认开启一级缓存。 也就是在同一个SqlSession中,执行相同的查询SQL,第一次会去数据库进行查询,并写到缓存中; 第二次以后是直接去缓存中取。 当执行SQL查询中间发生了增删改的操作,MyBatis会把SqlSession的缓存清空。

Mybatis延迟加载

如果查询订单并且关联查询用户信息。如果先查询订单信息即可满足要求,当我们需要查询用户信息时再查询用户信息。把对用户信息的按需去查询就是延迟加载。 所以延迟加载即先从单表查询、需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。

Mybatis关联查询

一对一关联查询 A表的一条数据,对应B表的一条数据;B表的一条数据,对应A表的一条数据。 创建两个表就可以,设置A表的外码是B表的主码 由于查询两个表,最后返回的是进行笛卡尔积后的结果,我们需要创建一个新类包含这两个表里的属性,通常来讲这个类叫***Business。 在这个Business类中写属性较少的类,并创建setter,getter和toString方法。 Mapper.xml 使用re […]

Mybatis基于动态代理实现CRUD

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。