springboot引入mybatis和myabtis-plus的时候,执行创建表的语句时报如下错误,xml其实是可以识别到的,其他的查询语句都没有问题,只有在操作数据库的语句上出现了问题,参考网上其他办法是无法解决的;
最后通过删除掉mybatis的依赖,只保留mybatis-plus的依赖后,该问题则解决了,详细原因还不清楚,可以留言告诉我!
一、mybatis-plus的版本
<!-- mybatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3.3</version>
</dependency>
二、yml配置
mybatis-plus:
# Maven多模块项目的扫描路径需以classpath*: 开头(即加载多个jar包下的XML文件)
mapper-locations: classpath*:/mapper/*.xml
configuration:
# 打印sql到控制台
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# 逻辑删除配置
global-config:
# 关闭控制台打印mybatis-plus的LOGO
banner: false
db-config:
logic-delete-field: isDelete # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
三、项目结构(xml位置)
四、tableMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.dac.datacenter.dao.TableDao">
<update id="createTable" parameterType="String">
CREATE TABLE ${tableEnName} (
id int(20) NOT NULL AUTO_INCREMENT,
entityId int(20) NOT NULL,
dx double NOT NULL,
dy double NOT NULL,
dz double NOT NULL,
ntype varchar(32) NOT NULL,
gnssTime bigint(20) NOT NULL,
attributes varchar(255) DEFAULT NULL,
PRIMARY KEY (id)
)
</update>
</mapper>
最后问题是解决了,但是为什么呢,我也不清楚,欢迎留言!