什么是Mybatis-plus?简单的说,他就是Mybatis的加强工具,我们在使用Mybatis的时候,结合Spring、SpringMVC时,还需要添加依赖进行整合,另外实体和mapper.xml之前的映射关系还比较复杂,还要在mapper.xml中实现大量的sql语句,而Mybatis-plus,更加突出Springboot的特点,0配置文件的原则,将映射文件也可以省略了,大多数的sql语句都进行了封装,直接调用即可,方便了很多。
一、依赖引入
<dependencies>
<!--项目启动-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!--测试的启动类-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--javabean的setter和getter生成-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!--启动类-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<!--jdbc数据库依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
</dependencies>
二、配置文件指定数据源连接信息application.properties
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/库名?characterEncoding=utf8&serverTimezone=UTC
spring.datasource.username=用户名
spring.datasource.password=密码
三、mapper层和service层
service直接调用Mybatis-plus提供的数据库接口。
List<Cron> selectList(){
List<Cron> crons = cronMapper.selectList(null);
return crons;
}
如果我想自己定义sql语句怎么办呢?
在mapper.java中进行sql语句定义如下所示:
public interface CronMapper extends BaseMapper<Cron> {
/*自定义sql语句*/
@Select("select cron from cron limit 1")
String getCron();
}
在service中直接调用即可:
String getCron(){
return cronMapper.getCron();
}