MyBatis的增强 工具包MyBatis Plus

121 阅读2分钟

MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。MyBatis-Plus 中的所有功能都是通过 Java 注解和 AOP 来实现,不需要修改任何 MyBatis 的配置。

定义

MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

使用方法

  1. 添加依赖pom.xml 文件中添加 MyBatis-Plus 的依赖。
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>最新版本</version>
    </dependency>
    
  2. 配置数据源application.propertiesapplication.yml 文件中配置数据库连接信息。
    spring:
      datasource:
        url: jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
        username: 用户名
        password: 密码
        driver-class-name: com.mysql.cj.jdbc.Driver
    
  3. 配置 MyBatis-Plus 在 Spring Boot 应用的主类或者配置类上添加 @MapperScan 注解,指定 Mapper 接口所在的包路径。
    @SpringBootApplication
    @MapperScan("com.example.demo.mapper")
    public class Application {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }
    
  4. 创建实体类 定义一个 Java 实体类,并使用注解指定表名和字段名。
    @Data
    @TableName("table_name")
    public class EntityName {
        @TableId(value = "id", type = IdType.AUTO)
        private Long id;
        private String name;
        // 其他字段
    }
    
  5. 创建 Mapper 接口 创建一个继承 BaseMapper 的 Mapper 接口。
    @Mapper
    public interface MapperName extends BaseMapper<EntityName> {
        // 自定义查询等
    }
    
  6. 使用 Mapper 接口 在服务类或者控制器中注入 Mapper 接口,并使用其提供的方法。
    @Service
    public class ServiceName {
        @Autowired
        private MapperName mapper;
        public List<EntityName> findAll() {
            return mapper.selectList(null);
        }
    }
    

优势

  1. 简化开发:提供丰富的 CRUD 功能,减少开发量。

  2. 高效灵活:通过 Java 注解和 AOP 实现,不影响 MyBatis 配置。

  3. 代码生成器:支持代码自动生成,一键生成 Entity、Mapper、Mapper XML、Service、Controller 等。

  4. 集成多种数据库:支持多种数据库,如 MySQL、Oracle、SQL Server 等。

  5. 插件扩展:提供多种插件,如分页插件、性能分析插件等。

  6. 代码清晰:代码结构清晰,易于维护和阅读。 通过以上特点,MyBatis-Plus 在提高开发效率、简化数据库操作方面具有明显优势。