mybatis-plus 基本使用

1. 引入依赖

首先,pom.xml 中添加MyBatis-Plus的依赖

<!-- Maven中的依赖示例 -->  
<dependency>  
    <groupId>com.baomidou</groupId>  
    <artifactId>mybatis-plus-boot-starter</artifactId>  
    <version>版本</version>  
</dependency>

2. 配置数据源

在Spring Boot项目的配置文件(如application.properties或application.yml)中,配置数据库连接信息,包括数据库的URL、用户名、密码以及驱动类名。

# application.properties 示例  
spring.datasource.url=jdbc:mysql://localhost:3306/your_database?useSSL=false&serverTimezone=UTC  
spring.datasource.username=your_username  
spring.datasource.password=your_password  
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

3. 实体类

实体类通常对应于数据库中的表。使用MyBatis-Plus的注解可以简化映射过程。

import com.baomidou.mybatisplus.annotation.TableId;  
import com.baomidou.mybatisplus.annotation.TableName;  
import java.io.Serializable;  
  
@TableName("user") // 指定实体类对应的数据库表名  
public class User implements Serializable {  
      
    private static final long serialVersionUID = 1L;  
      
    @TableId // 标识主键字段  
    private Long id;  
      
    private String name;  
      
    private Integer age;  
      
    // 省略 getter 和 setter 方法  
}

通过@TableName注解指定实体类对应的数据库表名,通过@TableId注解标识主键字段。

4. Mapper 接口

Mapper接口用于定义与数据库交互的SQL语句。可以继承MyBatis-Plus提供的BaseMapper接口,这样就无需编写常见的 CRUD 方法了。

import com.baomidou.mybatisplus.core.mapper.BaseMapper;  
import org.apache.ibatis.annotations.Mapper;  
  
@Mapper  
public interface UserMapper extends BaseMapper<User> {  
    // 如果有特殊的SQL操作,可以在这里自定义方法  
}

5. Service 层

Service层通常包含业务逻辑。可以通过继承MyBatis-Plus的ServiceImpl类来快速实现业务逻辑。

import com.baomidou.mybatisplus.extension.service.IService;  
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
import org.springframework.stereotype.Service;  
  
@Service  
public class UserService extends ServiceImpl<UserMapper, User> implements IService<User> {  
    // 在这里可以添加自定义的业务逻辑方法  
}

通过继承ServiceImpl并指定Mapper接口和实体类,可以快速获得基本的CRUD操作。

6. 调用 Service

在Controller或其他组件中,可以注入Service并调用其方法来实现业务逻辑。

import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.web.bind.annotation.GetMapping;  
import org.springframework.web.bind.annotation.RestController;  
  
@RestController  
public class UserController {  
      
    @Autowired  
    private UserService userService;  
      
    @GetMapping("/users")  
    public List<User> getAllUsers() {  
        return userService.list(); // 调用Service层的方法获取所有用户列表  
    }  
}

7. 启动类

确保 Spring Boot 启动类上有@MapperScan注解,以扫描Mapper接口。

import org.springframework.boot.SpringApplication;  
import org.springframework.boot.autoconfigure.SpringBootApplication;  
import org.mybatis.spring.annotation.MapperScan;  
  
@SpringBootApplication  
@MapperScan("com.yourpackage.mapper") // 替换为你的Mapper接口所在的
  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值