Mybatis一次执行多条Sql语句时druid报错

场景

在项目中使用mybatis-plus,druid作为数据库连接池。项目中有需求,前端用户可以配置新建数据库表,所以项目中需要执行建表语句和创建索引的DDL

报错信息

java.sql.SQLException: sql injection violation, multi-statement not allow

解决方案

  1. 在jdbc连接信息url中添加参数 ?allowMultiQueries=true
  2. 去掉druid filters中的 wall。例:
spring.datasource.druid.filters=config,stat,slf4j
  1. 配置druid 过滤器 wall 的参数
spring.datasource.druid.filter.wall.config.multi-statement-allow=true
posted on 2024-04-17 10:47  猿来就是尔  阅读(1)  评论(0)    收藏  举报  来源