MyBatis-Plus入门案例

星辰之海姬 2024-09-05 ⋅ 8 阅读

简介

MyBatis-Plus是一个为MyBatis框架提供增强功能的开源项目,它简化了MyBatis的开发流程,提供了更加强大和易用的增删改查等方法。本文将介绍一个基本的入门案例,帮助读者快速上手和使用MyBatis-Plus。

环境准备

  • JDK 1.8及以上
  • Maven
  • MyBatis-Plus依赖

创建数据库表

首先,在数据库中创建一个名为"users"的表,表结构如下:

CREATE TABLE `users` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

引入依赖

在项目的pom.xml文件中,添加MyBatis-Plus依赖:

<dependencies>
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.0.7.1</version>
    </dependency>
</dependencies>

配置数据源

在项目的application.properties(或application.yml)文件中,添加数据库连接配置:

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/db_example?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root

创建实体类

创建一个名为"User"的实体类,用于映射数据库表:

public class User {
    private Long id;
    private String name;
    private Integer age;

    // getter and setter
}

创建Mapper接口

创建一个名为"UserMapper"的Mapper接口,用于定义增删改查等方法:

@Mapper
public interface UserMapper extends BaseMapper<User> {
}

编写业务代码

在业务代码中使用MyBatis-Plus提供的方法来实现数据操作。以下是一些常用的示例代码:

插入数据:

@Autowired
private UserMapper userMapper;

public void addUser(User user) {
    userMapper.insert(user);
}

查询数据:

public User getUserById(Long id) {
    return userMapper.selectById(id);
}

public List<User> getAllUsers() {
    return userMapper.selectList(null);
}

public List<User> getUsersByName(String name) {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.lambda().like(User::getName, name);
    return userMapper.selectList(queryWrapper);
}

更新数据:

public void updateUser(User user) {
    userMapper.updateById(user);
}

public void updateUserByName(String name, Integer age) {
    UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
    updateWrapper.lambda().set(User::getAge, age).eq(User::getName, name);
    userMapper.update(null, updateWrapper);
}

删除数据:

public void deleteUser(Long id) {
    userMapper.deleteById(id);
}

public void deleteUsersByName(String name) {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.lambda().eq(User::getName, name);
    userMapper.delete(queryWrapper);
}

总结

通过本文的入门案例,我们了解了如何使用MyBatis-Plus进行数据操作,MyBatis-Plus简化了MyBatis的开发流程,并提供了更加易用和强大的增删改查等功能。读者可以根据自己的需求进一步了解和探索MyBatis-Plus的其他功能和特性,提高开发效率和代码质量。

参考链接:


全部评论: 0

    我有话说: