springboot集成mybatis-plus
springboot 集成mybatis-plus
一、pom.xml
1.引入mysql
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
2.引入mybatis
<!-- SpringBoot集成mybatis框架 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency>
引入mybatis-plus
<!-- mybatis-plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.0-RC3</version> </dependency>
二、application.yml配置
#配置日志信息此操作可以实现打印sql语句功能 logging: config: classpath:gttx/log/logback-spring.xml level: com: example: demo: debug mybatis-plus: mapper-locations: classpath:mapper/*Mapper.xml #实体扫描,多个package用逗号或者分号分隔 typeAliasesPackage: com.example.demo.*.entity global-config: #主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID"; id-type: 3 #字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断" field-strategy: 2 #驼峰下划线转换 db-column-underline: true #mp2.3+ 全局表前缀 mp_ #table-prefix: mp_ #刷新mapper 调试神器 refresh-mapper: true #数据库大写下划线转换 #capital-mode: true # Sequence序列接口实现类配置 key-generator: com.baomidou.mybatisplus.incrementer.OracleKeyGenerator #逻辑删除配置(下面3个配置) logic-delete-value: 1 logic-not-delete-value: 0 configuration: #配置返回数据库(column下划线命名&&返回java实体是驼峰命名),自动匹配无需as(没开启这个,SQL需要写as: select user_id as userId) map-underscore-to-camel-case: true cache-enabled: false #配置JdbcTypeForNull, oracle数据库必须配置 jdbc-type-for-null: null log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
注意 我的目录结构是:
com.example.demo
需要根据自己的实际情况改一下
三、MybatisPlusConfig
新建MybatisPlusConfig.java,写入如下代码
import com.baomidou.mybatisplus.core.injector.ISqlInjector; import com.baomidou.mybatisplus.extension.injector.LogicSqlInjector; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.transaction.annotation.EnableTransactionManagement; @EnableTransactionManagement @Configuration @MapperScan("com.example.demo.*.repository") public class MybatisPlusConfig { /** * 注入sql注入器 */ @Bean public ISqlInjector sqlInjector() { return new LogicSqlInjector(); } /** * 分页插件 */ @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); } }
注:这只是简单配置,如需更详细的配置,可自寻自行查询,不明白的可以留言,我会定期回复。