- 特大好消息,MYSQL我已经学过,这里主要的操作是添加了JetBrain公司的图形化工具
- 直接开始学习MyBatis!
MyBatis
- 持久层框架,用于简化JDBC的开发
MyBatis入门
- 1.准备工作
- 创建springboot工程,数据库表user,实体类User
- 2.引入MyBatis的相关依赖,配置MyBatis(数据库连接信息):MyBatis Framework,MySQL Driver
- 3.编写SQL语句(注解/XML)
- 只要定义Mapper接口,不用定义实现类
- pojo放实体类
- 配置SQL提示
JDBC介绍
- 是API
数据库连接池
- 数据库连接池是个容器,负责分配、管理数据库连接
- 它允许应用程序重复使用一个现有的数据库连接,而不是重新建立一个
- 优势:资源重用、提升响应速度,避免数据库连接遗漏
标准接口DataSource
- 功能:获取连接
- Connection getConnection() throws SQLException;
- springboot中默认自带Hikari连接池
- Druid连接池是阿里巴巴开源的数据库连接池项目
lombok
- 通过注解自动生成构造器,getter/setter,equals等
- 引入依赖
- IDEA之如何快速生成get和set方法_java_脚本之家 (jb51.net)
- ctrl+shift+,
- Lombok会在编译时,自动生成对应的java代码,使用Lombok时,还需要安装一个lombok插件(idea 自带)
MyBatis基础操作
环境准备
- application.yml 或 application.properties 配置文件乱码问题_application.properties乱码-CSDN博客
- 命名时,数据库下划线分割,Java驼峰命名
删除
根据主键删除数据
- 日志输出
-
#驱动类名称 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #数据库连接的url spring.datasource.url=jdbc:mysql://localhost:3306/mybatis #连接数据库的用户名 spring.datasource.username=root #连接数据库的密码 spring.datasource.password=1234 #配置mybatis的日志, 指定输出到控制台 mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl #开启mybatis的驼峰命名自动映射开关 a_column ------> aCloumn mybatis.configuration.map-underscore-to-camel-case=true
-
- 预编译SQL
- 性能更高,更安全(防止SQL注入)
- 参数占位符
新增(主键返回)
- 数据添加成功后,需要获取插入数据库数据的主键
- 所有基础操作直接照猫画虎!不再赘述
XML映射文件
- 规范
- 约束是固定的,打开MyBatis中文网复制即可
- MyBatis中文网
MyBatisX
- 基于IDEA快速开发MyBatis的插件
动态SQL
- 随用户输入或外部条件变化而变化
<if>
<where>
- 去除多余关键字
<foreach>
- 循环遍历
- collection:要遍历的集合
- item:遍历出来的元素
- separator:分隔符
- open:遍历前拼接的SQL片段
- close:遍历后拼接的SQL片段
<sql>
<include>
- refid:指定sql片段