传统的JDBC的代码需要繁琐的api,开发效率低,代码冗余
mybatis是一款优秀的持久层框架,它支持自定义sql,存储过程,以及高级映射,mybatis前身是ibatis
数据映射
持久层: pojo对象 数据表
1.数据表:用户数据信息,持久化到本地磁盘中
2.pojo:程序通过对象封装数据信息
映射关系:一个pojo对象要求映射一张数据表
1.对象名称 映射数据表的表名
2. 对象的属性 映射数据表中的字段
数据表结构
spring使用的是jdk代理
springboot使用的是CGlib的代理
知识点:如果是多个参数传递,一般采用对象方式封装
resulttype规则
type-aliases-package: com.jt.pojo
别名包 在配置文件中指定包路径 :可以自动实现包路径的拼接
参数传递的规则:
1.如果是单个参数,则使用#{key} 获取的是参数的值
2.如果是对象参数,则使用#{属性} 获取是属性的值
3.如果多个参数不方便使用user对象 (多值传一个参数),应该使用万能的集合map
xml的转义字符
1. > >
2. < <
3. & &
mybatis只支持单值传参 使用@Param将多个参数多值封装成单值
window系统中不区分大小写
linux系统中严格区分大小写
Sql标签: 抽取公共的Sql语句 优势:节省代码 缺点:占用空间,影响可读性0
<sql id="tableColumn"> id,name,age,sex </sql>
<select id="findUserByLike" resultType="User">
SELECT <include refid="tableColumn"/> FROM demo_user WHERE NAME LIKE "%"#{name}"%"
</select>