mybatis plus 导出sql_如何把Mybatis迁移到Mybatis-Plus中

本文介绍了如何将原有的Mybatis项目迁移到Mybatis-Plus,包括解决迁移过程中遇到的错误,如Invalid bound statement问题。文章详细讲述了Mybatis-Plus的依赖配置、代码生成器的创建以及解决主键ID操作问题的方法。此外,还提到了配置文件Bean的替换,以避免配置冲突。
摘要由CSDN通过智能技术生成

如何把Mybatis迁移到Mybatis-Plus中

发布时间:2020-11-06 16:19:33

来源:亿速云

阅读:125

作者:Leah

今天就跟大家聊聊有关如何把Mybatis迁移到Mybatis-Plus中,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

由于原来项目中已有很多功能和包,想迁移到Mybatis-Plus,旧的还是继续用 Mybatis和PageHelper,新的准备全部用Mybatis-Plus。迁移遇到了各种错误,记录一下,特别是这个错误:mybatis-plus org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):,花了差不多一天时间,都差点准备撤子模块了,将旧的一个模块,新的一个模块。

一、Mybatis-Plus依赖

后面还准备新建对象,把代码生成器也加进来了。

com.baomidou

mybatis-plus-boot-starter

${mybatis.plus.version}

com.baomidou

mybatis-plus-generator

${mybatis.plus.generator.version}

org.apache.velocity

velocity-engine-core

${velocity.engine.version}

在这儿遇到第一个问题,原模板有Velocity 1.7版本,在代码生成器中有需要用velocity-engine-core,这两个不能同时引用,会有冲突。将Velocity引用去掉,在服务器监控程序有一个下面语句不能用,注释掉,好像没有什么影响。

p.setProperty(Velocity.OUTPUT_ENCODING, Constants.UTF8);

二、创建代码生成器

参考官方文档,找个单独的包,创建代码生成器。在原来的模块上增加后,各种不能使用,没有办法,新建了一个全新的文件,生产对象代码,创建测试对象,可以运行,到了原来的程序上好多问题,后检查大部分是引用包之间版本冲突造成,主要是:

1、不要保留Mybatis的依赖,用最新的Mybatis-plus-boot-start就行

2、Mybatis-plus版本也会不影响,我用的是3.3.1

3、包的位置影响很大,接口文件一定要在@MapperScan(“com.xiyou.project.**.mapper”)包含的目录下,

4、配置文件要正确,生成代码要在配置文件包含下:

# MyBatis-plus配置

mybatis-plus:

# 搜索指定包别名

type-aliases-package: com.xiyou.project.**.domain

# 配置mapper的扫描,找到所有的mapper.xml映射文件

mapper-locations: classpath*:mybatis/**/*Mapper.xml

// 执行 main 方法控制台输入模块表名回车自动生成对应项目目录中

public class MpGenerator {

/**

*

* 读取控制台内容

*

*/

public static String scanner(String tip) {

Scanner scanner = new Scanner(System.in);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值