MyBatis-Plus中ActiveRecord (AR)如何使用

  介绍

这期内容当中小编将会给大家带来有关MyBatis-Plus中ActiveRecord (AR)如何使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

<编辑类="目录">

1。什么是ActiveRecord (AR) ?

ActiveRecord是什么:

<李>

每一个数据库表应该对应创建一个实体类,类的每一个对象的实例对应于数据库中表的一行记录;通常表的每个字段在类中都有相应的方法;

<李>

ActiveRecord负责把自己持久化。在ActiveRecord中封装了对数据库的访问,通过对象自己实现CRUD,实现优雅的数据库操作。

<李>

ActiveRecord也封装了部分业务逻辑。可以作为业务对象使用。

2。通过AR实现CRUD

首先创建一张表。

 MyBatis-Plus中ActiveRecord (AR)如何使用“> </p> <blockquote> <p>创建一个SpringBoot工程,在pom文件中添加依赖。</p> </引用> <pre类= & lt; dependency>   ,,,,,,,,,,,& lt; groupId> org.springframework.boot   ,,,,,,,,,,,& lt; artifactId> spring-boot-starter   ,,,,,,,& lt;/dependency>   ,   ,,,,,,,& lt; dependency>   ,,,,,,,,,,,& lt; groupId> org.springframework.boot   ,,,,,,,,,,,& lt; artifactId> spring-boot-starter-test   ,,,,,,,,,,,& lt; scope> test   ,,,,,,,& lt;/dependency>   ,   ,,,,,,,& lt; dependency>   ,,,,,,,,,,,& lt; groupId> mysql   ,,,,,,,,,,,& lt; artifactId> mysql-connector-java   ,,,,,,,,,,,& lt; scope> runtime   ,,,,,,,,,,,& lt; version> 5.1.9   ,,,,,,,& lt;/dependency>   ,   ,,,,,,,& lt; dependency>   ,,,,,,,,,,,& lt; groupId> com.baomidou   ,,,,,,,,,,,& lt; artifactId> mybatis-plus-boot-starter   ,,,,,,,,,,,& lt; version> 3.0.5   ,,,,,,,& lt;/dependency>

在核心配置文件中,配置数据库相关的连接信息。

#配置数据库的相关连接信息   spring.datasource.driver-class-name=com.mysql.jdbc.Driver   spring.datasource.url=jdbc: mysql://localhost: 3306/springdb ? useUnicode=true& characterEncoding=UTF-8& useJDBCCompliantTimezoneShift=true& useLegacyDatetimeCode=false& serverTimezone=% 2 b8格林尼治时间   spring.datasource.username=根   spring.datasource.password=12345678   ,   #配置对应的日志信息   mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout。StdOutImpl

创建一个实体类,要使用AR,那么实体类就必须继承议员框架中的模型这个类。

package  com.szh.mybatisplus.entity;   ,   import  com.baomidou.mybatisplus.annotation.IdType;   import  com.baomidou.mybatisplus.annotation.TableId;   import  com.baomidou.mybatisplus.extension.activerecord.Model;   ,/* *   ,*使用AR,要求实体类必须继承议员框架中类的模型   ,*模型类中提供了数据库相关的CRUD操作   ,*/public  class  Dept  extends  Model< Dept>, {   ,   ,,,@TableId (=value “id", type =, IdType.AUTO)   ,,,private  Integer  id;   ,,,private  String 名称;   ,,,private  String 移动;   ,,,private  Integer 经理;   ,   ,,,//getter 以及setter   ,,//toString   }

可以从模型类的源码中看的到,这其中定义了大量关于CRUD操作的方法。

 MyBatis-Plus中ActiveRecord (AR)如何使用“> </p> <blockquote> <p>创建一个映射器接口。这里虽然不使用映射器,但也需要定义这个它,议员通过mapper获取到表的结构;不定义时,议员报错无法获取表的结构信息。</p> </引用> <pre类= package  com.szh.mybatisplus.mapper;   ,   import  com.baomidou.mybatisplus.core.mapper.BaseMapper;   import  com.szh.mybatisplus.entity.Dept;   ,/* *   ,*   ,*/public  interface  DeptMapper  extends  BaseMapper< Dept>, {   }

在SpringBoot项目的启动入口类上方,添加@MapperScan注解,确保可以扫描到MyBatis,议员下的相关注解。

package  com.szh.mybatisplus;   ,   import  org.mybatis.spring.annotation.MapperScan;   import  org.springframework.boot.SpringApplication;   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

MyBatis-Plus中ActiveRecord (AR)如何使用