目录
Mybatis_Plus相比于Mybatis做了很多的简化,使用起来十分方便,下面是集成案例
一、pom.xml文件添加依赖
<!--mybatis-plus的springboot支持-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
二、yml配置
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志
map-underscore-to-camel-case: true
# 该配置就是将带有下划线的表字段映射为驼峰格式的实体类属性
global-config:
db-config:
table-prefix: #表前缀
id-type: auto #设置id自增
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/admin?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8
username: root
password: root
三、实体类
package com.mp.test.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Person {
private Integer id;
private String name;
private Integer age;
private String address;
public Person(String name, Integer age, String address) {
this.name = name;
this.age = age;
this.address = address;
}
}
四、数据库操作层
package com.mp.test.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mp.test.pojo.Person;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
@Mapper
@Repository
public interface PersonDao extends BaseMapper<Person> {
}
这里我们不难发现,Dao类仅仅需要继承一个BaseMapper<T>,T为对应实体类的泛型,就可以轻松调用一些常用的数据库操作方法。
五、测试类
package com.mp.test;
import com.mp.test.dao.PersonDao;
import com.mp.test.pojo.Person;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class TestApplicationTests {
@Autowired
private PersonDao personDao;
@Test
void insert() {
if(personDao.insert(new Person(9,"Kim",12,"US"))==1){
System.out.println("插入成功");
}
}
@Test
void delete() {
if(personDao.deleteById(3)==1){
System.out.println("删除成功");
}
}
@Test
void update() {
if(personDao.updateById(new Person(9,"Aanna",21,"UK"))==1){
System.out.println("修改成功");
}
}
@Test
void query() {
Person person=personDao.selectById(9);
System.out.println(person);
}
}
简直不要太方便,感谢国人的开发。