spring boot 2.0.3 mybatis升级mybatis-plus

项目原来是使用mybtais + durid,现升级为mybatis-plus2.3 + durid + mysql。

官方文档地址,请注意:mybatis-plus3.0+ 的配置有变化,请查看官网文档(可能是旧的)或demo

步骤如下:
1. 引入pom

<dependencies>
  <dependency>
      <groupId>com.baomidou</groupId>
      <artifactId>mybatis-plus-boot-starter</artifactId>
      <version>2.3</version>
  </dependency>
</dependencies>
<!-- 如果mapper.xml是放在src/main/java目录下,需配置以下-->
<build>
  <resources>
      <resource>
          <directory>src/main/java</directory>
          <filtering>false</filtering>
          <includes>
              <include>**/mapper/*.xml</include>
          </includes>
      </resource>
  </resources>
</build>
  1. 配置application.properties(durid配置不变)
##mybatis-plus begin

#mapper.xml包路径
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

mybatis-plus.mapper-locations=classpath*:sqlmap/**/*Mapper.xml

#实体扫描,多个package用逗号或者分号分隔
mybatis-plus.typeAliasesPackage=com.burt.domain

#枚举扫描,多个package用逗号或者分号分隔
#mybatis-plus.typeEnumsPackage=com.burt.*.entity.enums

#主键类型  0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
mybatis-plus.global-config.id-type=2

#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
mybatis-plus.global-config.field-strategy=2

#驼峰下划线转换
mybatis-plus.global-config.db-column-underline=true

#mp2.3+ 全局表前缀 mp_
#mybatis-plus.global-config.table-prefix: mp_

#刷新mapper 调试神器
#mybatis-plus.global-config.refresh-mapper: true

#配置返回数据库(column下划线命名&&返回java实体是驼峰命名),自动匹配无需as(没开启这个,SQL需要写as: select user_id as userId)
mybatis-plus.configuration.map-underscore-to-camel-case=true

mybatis-plus.configuration.cache-enabled=false

##mybatis-plus end
  1. 使用@MapperScan注解扫描Mapper接口
@MapperScan(value = { "com.burt.dao", "com.burt.*.dao" })
  1. 修改durid配置中mybatis的SqlSessionFactoryBean org.mybatis.spring.SqlSessionFactoryBean为mybatis-plus的SqlSessionFactoryBean com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean
    如果不修改会仍然使用mybatis的SqlSessionFactoryBean而不是mytais-plus的,会出现异常Invalid bound statement (not found)

如果项目启动出现这个错:

sun.misc.Unsafe.park......
java.util.concurrent.locks.LockSupport.parkNanos......

那极有可能是因为上述第4步没有做,没有换成mybatis-plus的SqlSessionFactoryBean,导致mybatis与mybatis-plus冲突

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值