druid springboot批量执行配置不生效 multi-statement-allow = true

2fjabf4q  于 5个月前  发布在  Druid
关注(0)|答案(4)|浏览(74)

库 : druid-spring-boot-starter
版本: 1.1.13

datasource:
    druid:
      filter:
        wall:
          config:
            multi-statement-allow: true

加上这个配置批量执行druid还是不能生效.使用druid1.1.10的时候就不行,三个小版本过去了还没解决吗?
目前只能用@bean的形式解决,但是会导致filters失效,需要在Bean中再次配置

@Bean
    public DataSource dataSource() throws SQLException {
        DruidDataSource dataSource = DruidDataSourceBuilder.create().build();
        // 设置数据源允许执行多条语句
        WallConfig wallConfig = new WallConfig();
        wallConfig.setMultiStatementAllow(true);
        WallFilter wallFilter = new WallFilter();
        wallFilter.setConfig(wallConfig);
        dataSource.getProxyFilters().add(wallFilter);
        dataSource.setFilters("stat,wall");//配置文件中的配置失效必须手动设置
        return dataSource;
    }

#980 这个问题很早就提出来了.

hl0ma9xz

hl0ma9xz1#

这个配置很奇怪,multi-statement-allow: true 好像跟filters : wall 互斥,如果把filters 的 wall 去掉,就算不配置multi-statement-allow: true 也不会报 sql injection violation, multi-statement not allow 这个错误

snz8szmq

snz8szmq2#

现在遇到了,还没解决。。。。

knsnq2tg

knsnq2tg3#

就这两千多个open的,不知道为啥之前这个数据源就比较火。

g52tjvyc

g52tjvyc4#

这项目是不是黄了?KPI项目?

相关问题