mybatisplus使用
时间: 2023-09-04 14:06:35 浏览: 84
mybatis plus操作
MyBatis-Plus(简称 MP)是一个基于 MyBatis 的增强工具,它拓展了 MyBatis 的功能,提供了许多实用的功能,简化了开发流程,提高了开发效率。
下面是 MyBatis-Plus 的使用步骤:
1. 引入 MyBatis-Plus 的依赖包。
Maven 项目需要在 pom.xml 文件中添加以下依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>最新版本</version>
</dependency>
```
2. 配置 MyBatis-Plus 的相关参数。
MyBatis-Plus 的配置文件通常是在 application.yml 或 application.properties 文件中进行配置。
例如,在 application.yml 文件中添加以下配置:
```yaml
mybatis-plus:
mapper-locations: classpath:mapper/*.xml # mapper 文件的位置
global-config:
db-config:
id-type: auto # 主键类型为自增
field-strategy: not_empty # 字段非空检查
logic-delete-value: 1 # 逻辑删除值
logic-not-delete-value: 0 # 逻辑未删除值
```
3. 创建实体类。
在 MyBatis-Plus 中,实体类需要继承 Model 类,同时需要使用 @TableName 注解指定表名,@TableField 注解指定字段名。
例如,创建一个 User 实体类:
```java
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
@Data
@TableName("user")
public class User extends Model<User> {
@TableId(type = IdType.AUTO)
private Long id;
@TableField(value = "username")
private String username;
@TableField(value = "password")
private String password;
@TableLogic
@TableField(value = "is_deleted")
private Integer deleted;
}
```
4. 创建 Mapper 接口。
在 MyBatis-Plus 中,Mapper 接口需要继承 BaseMapper 接口,同时需要使用 @Mapper 注解指定 Mapper 的名称。
例如,创建一个 UserMapper 接口:
```java
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface UserMapper extends BaseMapper<User> {
}
```
5. 使用 MyBatis-Plus 进行 CRUD 操作。
MyBatis-Plus 提供了许多常用的方法,例如:insert、update、delete、selectById、selectList 等等。使用这些方法可以快速地进行 CRUD 操作。
例如,使用 MyBatis-Plus 进行查询操作:
```java
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getById(Long id) {
return userMapper.selectById(id);
}
public List<User> getList() {
return userMapper.selectList(null);
}
public List<User> getByUsername(String username) {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("username", username);
return userMapper.selectList(queryWrapper);
}
public int save(User user) {
return userMapper.insert(user);
}
public int update(User user) {
return userMapper.updateById(user);
}
public int delete(Long id) {
return userMapper.deleteById(id);
}
}
```
至此,MyBatis-Plus 的使用就介绍完了。
阅读全文