1、什么是MyBatisPlus
MyBatisPlus官方网站:MyBatis-Plus 🚀 为简化开发而生
2、SpringBoor整合MyBatisPlus
2.1、配置
1、先准备好数据库环境
CREATE TABLE `user` (
`id` bigint(50) NOT NULL AUTO_INCREMENT,
`name` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '姓名',
`sex` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '性别',
`phone` varchar(11) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号',
`avatar` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '头像',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
2、导入环境
根据自己的版本决定
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.5</version>
<exclusions>
<exclusion>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</exclusion>
</exclusions>
</dependency>
3、配置启动项
#启动端口
server:
port: 8081
#连接数据配置
spring:
datasource:
url: jdbc:mysql://localhost:3306/blgo?useUnicode=true&characterEncoding=utf8
username: root
password: 111111
driver-class-name: com.mysql.cj.jdbc.Driver
#开启日志
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
4、目录结构
4.1、使用MyBatisPlus创建一个实体类
package com.example.demo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 功能:
* 作者:博博
* 日期:2024/4/30 21:36
*/
@Data
@TableName(value = "user")
public class User {
private Integer id;
private String name;
private String sex;
private String phone;
private String avatar;
}
4.2、Mapper层
package com.example.demo.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.demo.entity.User;
import org.apache.ibatis.annotations.*;
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
4.3、service层
package com.example.demo.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.demo.entity.User;
import org.springframework.stereotype.Service;
/**
* 功能:
* 作者:博博
* 日期:2024/4/30 21:41
*/
//@Service
public interface UserService extends IService<User> {}
4.3、serviceImpl层
package com.example.demo.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import com.example.demo.service.UserService;
import org.springframework.stereotype.Service;
/**
* 功能:
* 作者:博博
* 日期:2024/5/19 9:29
*/
@Service
public class UserServieImpl extends ServiceImpl<UserMapper, User> implements UserService {
}
4.5、controller
package com.example.demo.conertoller;
import com.example.demo.common.Result;
import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.apache.ibatis.annotations.Delete;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DuplicateKeyException;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 功能:
* 作者:博博
* 日期:2024/4/30 21:42
*/
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/list")
public List<User> getEricUserList(){
List<User> list = userService.list();
return list;
}
}
5、效果
此时运行项目,访问 IP+端口/接口地址