目录
目录
3、我们在刚刚插入数据的时候发现每个类可能都需要写主键生成策略,这是比较麻烦的,因此可以选择将主键配置策略设置到全局配置中。
4、如果你的表的名字都具备相同的前缀,那么可以设置默认的前缀配置策略,此时的话可以将实体类上的@TableName表名标签省略不写
5、在mybatis-plus中如果需要获取插入的数据的主键的值,那么直接获取即可,原因就在于配置文件中指定了默认的属性为true
3、Mybatis-plus的相关配置
在mybatis中我们可以在mybatis-config配置文件中可以添加<settings设置>标签,设置全局的默认策略,在MP中也具备相同的功能,只不过配置方式有所不同,我们可以在spring.xml文件中添加配置。
https://mp.baomidou.com/config/
在此链接中包含了非常多的配置项,用户可以按照自己的需求添加需要的配置,配置方式如下
部分配置演示:
(1)configuration配置时间:
通过这个配置文件的配置,大家可以进行回想上述问题的出现,mybatis-plus是如何解决这个问题的呢?
在mybatis-plus中会引入写默认的配置,这个选项的默认配置为true,因此可以完成对应的实现。
我们可以通过如下配置来禁用驼峰标识的操作,如下所示:
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration配置>
===============================================================================
<settings设置>
<setting name="logImpl" value="log4j"/>
</settings>
===============================================================================
<plugins插件>
<plugin interceptor拦截器="
com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor"></plugin>
</plugins>
===============================================================================
</configuration>
spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/tx
https://www.springframework.org/schema/tx/spring-tx.xsd">
//引入外部配置文件
<context:property-placeholder location地点="classpath类路径:db.properties"></context:property-placeholder>
===============================================================================
//配置数据源
<bean id="dataSource数据源" class="com.alibaba.druid.pool.DruidDataSource德鲁伊数据源">
<property name="driverClassName" value="${driverClassName}"></property>
<property name="url" value="${url}"></property>
<property name="username" value="${username}"></property>
<property name="password" value="${password}"></property>
</bean>
===============================================================================
//添加事务管理器
<bean id="transactionManager事务管理器" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource数据源" ref="dataSource数据源"></property>
</bean>
===============================================================================
//添加事务注解配置
<tx:annotation-driven transaction-manager="transactionManager事务管理器"/>
===============================================================================
//整合spring和mybatis
<bean id="sqlSessionFactoryBean线程工厂豆" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation配置位置" value="classpath类路径=:mybatis-config.xml"></property>
//<property name="mapperLocations映射位置" value="classpath:com/mashibing/dao/*.xml"></property>
//如果没设置,则*.xml会爆红
</bean>
//设置下面方式时,可不使用mybatis-config.xml
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer映射扫描配置">
<property name="basePackage基本包" value="com.mashibing.dao"></property>
</bean>
=================================== 添加 ======================================
<bean id="configuration配置时间" class="com.baomidou.mybatisplus.core.MybatisConfiguration(mybatis配置时间)">
<property name="mapUnderscoreToCamelCase驼峰标识" value="false"></property>
</bean>
===============================================================================
</beans>
MyTest.java
@Test
public void test02(){
EmpDao empDao = context.getBean("empDao", EmpDao.class);
Emp emp = new Emp();
emp.seteName("zhangsan");
emp.setJob("Teacher");
emp.setMgr(100);
emp.setSal(1000.0);
emp.setComm(500.0);
emp.setHiredate(new Date());
emp.setDeptno(10);
int insert = empDao.insert(emp);
System.out.println();
System.out.println(insert);
}
//成功
spring.xml
·
·
·
===============================================================================
//整合spring和mybatis
<bean id="sqlSessionFactoryBean线程工厂豆" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation配置位置" value="classpath类路径=:mybatis-config.xml"></property>
//<property name="mapperLocations映射位置" value="classpath:com/mashibing/dao/*.xml"></property>
=================================== 添加 ======================================
<property name="configuration配置时间" ref="configuration配置时间"></property>
</bean>
===============================================================================
//设置下面方式时,可不使用mybatis-config.xml
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer映射扫描配置">
<property name="basePackage基本包 " value="com.mashibing.dao"></property>
</bean>
===============