简介
- MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
- 官方文档
快速入门
- 建库建表,创项目,导入依赖,写配置文件,连接数据库
- 写实体类(pojo),
- 编写继承自BaseMapper的Mapper接口
- 无需写sql语句,直接CRUD
体验一把(创建的springboot项目)
- 导入依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.22</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
</dependencies>
复制代码
- pojo
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)//开启链式
public class User {
@TableId(type = IdType.AUTO)//ID_WORKER已过时,作者建议使用ASSIGN_ID。AUTO自增
private Long id;
private String name;
private Integer age;
private String email;
}
复制代码
- Mapper接口
@Mapper
@Repository//持久层注解
public interface UserMapper extends BaseMapper<User> {
//所有CRUD已经完成
//Mapper 继承该接口后,无需编写 mapper.xml 文件,即可获得CRUD功能
}
复制代码
- 配置文件(application.yaml)
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/mybatis-plus?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai
driver-class-name: com.mysql.cj.jdbc.Driver
# 配置日志
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 用什么日志就要导入相应的依赖
复制代码
- Test类
@SpringBootTest
class MybatisPlusFastStartApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
void contextLoads() { //参数是Wrapper
List<User> list = userMapper.selectList(null);
System.out.println(Arrays.toString(list.toArray()));
}
}
复制代码
用到的注解
@Mapper
@Repository
//持久层注解
都用在Mapper接口上
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END