起由
- 之前使用的是mybatis,后面为了再简化开发,引入plus ,期间发现相关问题
-
依赖:
-
引入mybatis-spring-boot-starter 的原因在于 ,原先是基于mybatis开发,内部使用到了 MybatisAutoconfiguration ,后面要基于plus ,因此 exclude 原先的依赖
-
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</version> <exclusions> <exclusion> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> </exclusion> <exclusion> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> </exclusion> </exclusions> </dependency>
-
-
分页插件原因同上
-
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.13</version> <exclusions> <exclusion> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> </exclusion> </exclusions> </dependency>
-
-
mybatis-plus:
-
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.2</version> </dependency>
-
-
-
yaml配置:
-
mybatis-plus: mapper-locations: classpath:/mapper/*.xml global-config: db-config: id-type: auto field-strategy: not_empty #驼峰下划线转换 column-underline: true #逻辑删除配置 logic-delete-value: 0 logic-not-delete-value: 1 db-type: mysql refresh: false configuration: map-underscore-to-camel-case: true
-
-
配置类:
-
分页插件:
-
@Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); }
-
-
使用mybatisSqlSessionFactoryBean代替sqlSessionFactoryBean:
-
@Bean public MybatisSqlSessionFactoryBean mybatisSqlSessionFactoryBean() throws IOException { MybatisSqlSessionFactoryBean sqlSessionFactoryBean = new MybatisSqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource()); MybatisConfiguration configuration = new MybatisConfiguration(); configuration.setMapUnderscoreToCamelCase(true); configuration.setLogImpl(StdOutImpl.class); sqlSessionFactoryBean.setConfiguration(configuration); sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mapper/*.xml")); return sqlSessionFactoryBean; }
-
-