
寫在前面
有粉絲私信我說,現在市面上用MyBatis的不多了,一般都是用MyBatis-Plus,建議我出一套MyBatis-Plus的文章,首先感謝建議,然后就是干!
MyBatis-Plus簡介
MyBatis-Plus(簡稱MP),其實就是MyBatis的一個增強,即把單表的增刪改查給封裝好了,直接拿來使用即可,
準備作業
首先創建一張資料庫表
DROP TABLE IF EXISTS user;
CREATE TABLE user
(
id BIGINT(20) NOT NULL COMMENT '主鍵ID',
name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
age INT(11) NULL DEFAULT NULL COMMENT '年齡',
email VARCHAR(50) NULL DEFAULT NULL COMMENT '郵箱',
PRIMARY KEY (id)
);
對應的資料如下
DELETE FROM user;
INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');
創建SpringBoot專案
創建一個普通的SpringBoot專案,然后引入依賴,既然要跟資料庫打交道,connector肯定不能少
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.18</version>
</dependency>
另外要使用mybatis-plus,當然也要引入該starter
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.1</version>
</dependency>
為了方便起見,這里引入Lombok
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
好了,依賴引入完畢,下面進行簡單配置
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/mybatis_plus?userSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
username: root
password: root
配置也寫好了,那么可以開始用了,
CRUD
在操作之前需要先創建一個物體類
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
物體類寫好之后,撰寫一個mapper介面,只需繼承BaseMapper,基本的單表查詢都給你封裝好了,真是太貼心了,
@Repository
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
測驗
@Test
void myInsert() {
User user = new User();
user.setName("賀志營");
user.setEmail("xxx@qq.com");
user.setAge(18);
userMapper.insert(user);
}
@Test
void myDelete() {
userMapper.deleteById(1);
}
@Test
void myUpdate() {
User user = new User();
user.setId(1L);
user.setName("賀志營");
user.setEmail("aaa@qq.com");
user.setAge(18);
userMapper.updateById(user);
}
@Test
void mySelect() {
List<User> users = userMapper.selectList(null);
users.forEach(System.out::println);
}
問題
我們會發現,在進行插入的時候,id是一串很長的數字,好像不是自增的,那么我們需要怎么做才能讓他自增呢,兩部曲:1、在資料庫中修改id欄位為自增,2、在物體類id上加上一個注解,
@Data
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String name;
private Integer age;
private String email;
}
然后再次操作就是自增了,

完事收工,
微信搜一搜【賀賀學編程】關注這個不一樣的程式員,關注后回復【面試】獲取海量面試題,聯系我還有機會獲得模擬面試機會,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/244827.html
標籤:java
