springboot druid 数据库批量更新错误 multi-statement not allow
来源:互联网 发布:mac 电源适配器 编辑:程序博客网 时间:2024/05/15 23:43
springboot druid 数据库多SQL错误 multi-statement not allow
Caused by: java.sql.SQLException: sql injection violation, multi-statement not allow com.alibaba.druid.wall.WallFilter.check(WallFilter.java:714) at com.alibaba.druid.wall.WallFilter.connection_prepareStatement(WallFilter.java:240) at com.alibaba.druid.filter.FilterChainImpl.connection_prepareStatement(FilterChainImpl.java:448) at com.alibaba.druid.filter.FilterAdapter.connection_prepareStatement(FilterAdapter.java:928) at com.alibaba.druid.filter.FilterEventAdapter.connection_prepareStatement(FilterEventAdapter.java:122) at com.alibaba.druid.filter.FilterChainImpl.connection_prepareStatement(FilterChainImpl.java:448) at com.alibaba.druid.proxy.jdbc.ConnectionProxyImpl.prepareStatement(ConnectionProxyImpl.java:342) at com.alibaba.druid.pool.DruidPooledConnection.prepareStatement(DruidPooledConnection.java:318)
解决方案:
1、配置数据库连接,添加allowMultiQueries=true
jdbc.url=jdbc:mysql://localhost:3306/test?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
2、如果需要开启wall监控,同时允许multiStatementAllow,就不要在application.yml中配置filter,自己定义
//使用连接池dataSource
@Bean@ConfigurationProperties(prefix = "spring.datasource")public DataSource dataSource() { DruidDataSource druidDataSource = new DruidDataSource(); List<Filter> filterList=new ArrayList<>(); filterList.add(wallFilter()); druidDataSource.setProxyFilters(filterList); return druidDataSource;}@Beanpublic WallFilter wallFilter(){ WallFilter wallFilter=new WallFilter(); wallFilter.setConfig(wallConfig()); return wallFilter;}@Beanpublic WallConfig wallConfig(){ WallConfig config =new WallConfig(); config.setMultiStatementAllow(true);//允许一次执行多条语句 config.setNoneBaseStatementAllow(true);//允许非基本语句的其他语句 return config;}
阅读全文
0 0
- springboot druid 数据库批量更新错误 multi-statement not allow
- springboot druid 数据库批量更新错误 multi-statement not allow
- MyBatis(7)--spring boot集成MyBatis,集成Druid批量更新报错multi-statement not allow
- MySql+Mybatis+Druid:sql injection violation, multi-statement not allow
- MySql+Mybatis+Druid:sql injection violation, multi-statement not allow
- MySql+Mybatis+Druid之SqlException:sql injection violation, multi-statement not allow
- SpringBoot 使用druid监控数据库
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Statement和PreparedStatement批量更新
- Sybase数据库提示The 'CREATE TABLE' command is not allowed within a multi-statement
- Mysql 批量更新操作的时候出错 “Multi-statement transaction required more than 'max_binlog_cache_size' bytes of s
- Error:java: Compilation failed: internal java compiler error
- jqGrid 翻页行保持选中
- Java RMI详解
- Object Detection系列(三) Fast R-CNN
- ArrayList和LinkList的区别
- springboot druid 数据库批量更新错误 multi-statement not allow
- 2017,年末福利!快来一起看看!
- Android Studio 3.0.1 和 Gradle 3.0.1的问题
- 正则表达式笔记
- 亚马逊跨境电商日出千单秘籍教程(附PDF书籍)
- el,jstl 判断一个值在不在集合list中
- 宋宝华: Linux系统性能剖析的模型和方法
- Java的发展史及java的由来
- 《高性能的RTC服务器OpenFire》