注意:
mybatisPlus默认加载resources下的mapper文件夹下的xml文件
默认将数据库表的字段用驼峰标识转换成实体类的属性
官方网站: https://mp.baomidou.com/
一.mybatisPlus和通用mapper使用区别
第一步:
把通用mapper的依赖、配置删除 包括:实体类的注解、引导类的mapperScan、dao接口的父接口
第二步:
添加启动器
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.2</version>
</dependency>
第三步:
修改pojo实体类
在类名上添加一个注解@TableName(value="表名") 用于表和实体类的映射关系
在注解上添加一个@TableId 表名是主键 还可以指定ID的类型 type=IdType.AUTO
第四步:
修改dao,让Dao的接口继承一个父接口BaseMapper<T> ,默认就有了CRUD方法
第五步:
修改Service实现类中dao的方法 userDao.selectById(id)
二.mybatisPlus使用步骤
1.导入坐标
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.2</version> </dependency> |
完整坐标:
<dependencies> <!--通过项目模板,已经自动配置上了springmvc启动器,lombok启动器和test启动器--> <!--项目模板自动配置 开始--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--项目模板自动配置 结束-->
<!--配置springboot整合mybatis Plus开始-->
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.2</version> </dependency>
<!--配置jdbc 开始--> <!--spring中的jdbc连接和事务是配置中的重要一环,在SpringBoot中该如何处理呢? 我们只要找到SpringBoot提供的启动器即可: --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--配置jdbc 结束--> <!--配置mysql 开始--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> <!--配置mysql 结束--> <!--配置Druid连接池 开始--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.6</version> </dependency> <!--配置Druid连接池 结束--> <!--配置springboot整合mybatis 结束-->
</dependencies> |
2.实体类
package com.ahd.pojo;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data;
import java.util.Date;
@Data //lombok的注解,在工程编译时自动为实体类添加上get,set,...方法 @TableName("tb_user") //告诉对应的数据库表的名字 public class User { // id @TableId //告诉 谁是主键 private Long id;
// 用户名 private String userName;
// 密码 private String password;
// 姓名 private String name;
// 年龄 private Integer age;
// 性别,1男性,2女性 private Integer sex;
// 出生日期 private Date birthday;
// 创建时间 private Date created;
// 更新时间 private Date updated;
// 备注 private String note; } |
3.编写dao层接口
package com.ahd.dao;
import com.ahd.pojo.User; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface UserDao extends BaseMapper<User> {//添加泛型,告知通用Mapper实体类是谁 } |
4. application.yml配置文件
spring: datasource: type: com.alibaba.druid.pool.DruidDataSource username: root url: jdbc:mysql:///saas-export-96 password: 123456 driver-class-name: com.mysql.jdbc.Driver #mybatis: # configuration: # map-underscore-to-camel-case: true # type-aliases-package: com.ahd.pojo # mapper-locations: /mapper/** |