赞
踩
1、添加mybatis-plus依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-extension</artifactId>
<version>3.5.1</version>
</dependency>
2、将环境配置yml里的mybatis配置名称修改成mybatis-plus:
mybatis-plus:
# 搜索指定包别名
typeAliasesPackage: com.cartreasure.**.domain
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations: classpath*:mapper/**/*Mapper.xml
# 加载全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
configuration:
map-underscore-to-camel-case: true
3、修改MyBatisConfig.java类里的sqlSessionFactory方法中获取的属性参数由mybatis改成mybatis-plus,并在结尾添加mybatis-plus的全局配置
@Bean public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception { String typeAliasesPackage = env.getProperty("mybatis-plus.typeAliasesPackage"); String mapperLocations = env.getProperty("mybatis-plus.mapperLocations"); String configLocation = env.getProperty("mybatis-plus.configLocation"); typeAliasesPackage = setTypeAliasesPackage(typeAliasesPackage); VFS.addImplClass(SpringBootVFS.class); final MybatisSqlSessionFactoryBean sessionFactory = new MybatisSqlSessionFactoryBean(); sessionFactory.setDataSource(dataSource); sessionFactory.setTypeAliasesPackage(typeAliasesPackage); sessionFactory.setMapperLocations(resolveMapperLocations(StringUtils.split(mapperLocations, ","))); sessionFactory.setConfigLocation(new DefaultResourceLoader().getResource(configLocation)); //获取mybatis-plus全局配置 GlobalConfig globalConfig = GlobalConfigUtils.defaults(); globalConfig.setMetaObjectHandler(new MyMetaObjectHandler()); GlobalConfig.DbConfig dbConfig = new GlobalConfig.DbConfig(); dbConfig.setLogicDeleteField("delFlag"); dbConfig.setLogicDeleteValue("2"); globalConfig.setDbConfig(dbConfig); sessionFactory.setGlobalConfig(globalConfig); MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); sessionFactory.setPlugins(interceptor); return sessionFactory.getObject(); } import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.cartreasure.common.utils.SecurityUtils; import org.apache.ibatis.reflection.MetaObject; import org.springframework.stereotype.Component; /** * mybatis-plus自动填充 */ @Component public class MyMetaObjectHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { this.strictInsertFill(metaObject,"createBy",String.class, SecurityUtils.getLoginUser().getUsername()); } @Override public void updateFill(MetaObject metaObject) { this.strictUpdateFill(metaObject,"updateBy",String.class,SecurityUtils.getLoginUser().getUsername()); } }
4、自己添加mybatis-plus的其他配置
不合数据库匹配
5、上面配置后,原来的mybatis也可以照常使用xml。
最后记得开启自动扫描 自己的目录
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。