MyBatis-Plus官网:
MyBatis-Plus(简称 MP),是一个 MyBatis 的增强工具包,只做增强不做改变. 为简化开 发工作、提高生产率而生 .
SpringBoot集合MyBatis-Plus
可参照官网
第一步:添加依赖:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.0</version>
</dependency>
<!-- mysql数据库驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<!-- durid数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
<!-- 勾选web包含springmvc -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
mybatisplus包含--->mybatis包含---->jdbc包含---->默认的数据库连接池
第二步:数据库连接的配置:
server:
port: 80
spring:
messages:
basename: i18n/Messages,i18n/Pages
datasource:
type: com.alibaba.druid.pool.DruidDataSource # 配置当前要使用的数据源的操作类型
driver-class-name: org.gjt.mm.mysql.Driver # 配置MySQL的驱动程序类
url: jdbc:mysql://localhost:3306/study # 数据库连接地址
username: root # 数据库用户名
password: mysqladmin # 数据库连接密码
dbcp2: # 进行数据库连接池的配置
min-idle: 5 # 数据库连接池的最小维持连接数
initial-size: 5 # 初始化提供的连接数
max-total: 5 # 最大的连接数
max-wait-millis: 200 # 等待连接获取的最大超时时间
第三步:配置文件中配置Mapper扫描
mybatis-plus:
mapper-locations: classpath*:com.wendao.demo.mapper/*Mapper.xml
# #实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.service.*.entity;
global-config:
sql-parser-cache: false
# sql-injector: com.baomidou.mybatisplus.extension.injector.DefaultSqlInjector
db-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: auto
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
# field-strategy: not-null
# table-underline: true
# logic-delete-value: -1
# logic-not-delete-value: 0
#刷新mapper 调试神器
refresh: true
# configuration:
# map-underscore-to-camel-case: true
# cache-enabled: false
# call-setters-on-nulls: true
Mapper:要继承mp通用mapper
public interface UserMapper extends BaseMapper<User> {
}
2:全局扫描,在引导类加上@MapperScan注解
@SpringBootApplication
@MapperScan("com.baomidou.mybatisplus.samples.quickstart.mapper")
public class Application {
public static void main(String[] args) {
SpringApplication.run(QuickStartApplication.class, args);
}
}
测试
@RunWith(SpringRunner.class)
@SpringBootTest
public class SampleTest {
@Autowired
private UserMapper userMapper;
@Test
public void testSelect() {
System.out.println(("----- selectAll method test ------"));
List<User> userList = userMapper.selectList(null);
Assert.assertEquals(5, userList.size());
userList.forEach(System.out::println);
}
}
通过以上几个简单的步骤,我们就实现了 User 表的 CRUD 功能,甚至连 XML 文件都不用编写!
Mp修改执行字段验证策略是:在实例对象的字段对应的数值为null的情况下,insert和update不会有该字段