mybatisplus的优缺点和具体使用步骤
时间: 2023-09-20 08:09:28 浏览: 122
mybatis-plus优缺点
Mybatis-plus是一个基于Mybatis的增强工具,它在Mybatis的基础上增加了很多实用的功能,能够大大提高开发效率和代码质量。下面是Mybatis-plus的优缺点和具体使用步骤:
优点:
1.提供了很多实用的增删改查操作,可以大大减少编写重复代码的工作量。
2.支持自动生成Mapper、Model、Service、Controller等代码,开发效率大大提高。
3.提供了很多实用的工具类,如Wrapper、LambdaQueryWrapper等,可以更方便地进行复杂查询。
4.支持分页查询、乐观锁、逻辑删除等常用功能,可以大大提高代码质量。
缺点:
1.对于一些特殊需求,可能需要手动编写SQL语句,Mybatis-plus的自动生成代码可能不能满足需求。
2.Mybatis-plus的文档相对较少,需要自己去探索和学习。
具体使用步骤:
1.引入Mybatis-plus的依赖:在pom.xml中添加以下依赖
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.1</version>
</dependency>
```
2.配置Mybatis-plus:在application.yml中添加以下配置
```yml
mybatis-plus:
mapper-locations: classpath:/mapper/*.xml # mapper文件所在路径
global-config:
db-config:
logic-delete-value: 1 # 逻辑删除值
logic-not-delete-value: 0 # 逻辑未删除值
id-type: auto # 主键类型
field-strategy: not_empty # 非空字段策略
table-prefix: sys_ # 表前缀
```
3.编写Mapper接口:编写继承BaseMapper的Mapper接口,可以使用Mybatis-plus提供的方法进行增删改查操作
```java
public interface UserMapper extends BaseMapper<User> {
}
```
4.编写Service类:编写Service类,可以使用Mybatis-plus提供的方法进行增删改查操作
```java
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
}
```
5.使用Mybatis-plus的工具类:可以使用Mybatis-plus提供的工具类进行复杂查询等操作
```java
// 使用Wrapper进行复杂查询
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.like("name", "张三").eq("age", 18);
List<User> userList = userMapper.selectList(wrapper);
// 使用LambdaQueryWrapper进行复杂查询
LambdaQueryWrapper<User> lambdaWrapper = new LambdaQueryWrapper<>();
lambdaWrapper.like(User::getName, "张三").eq(User::getAge, 18);
List<User> userList = userMapper.selectList(lambdaWrapper);
```
以上就是Mybatis-plus的优缺点和具体使用步骤。
阅读全文