Springboot集成Druid,sql报错 Error querying database. Cause: java.sql.SQLException:
druid
阿里云计算平台DataWorks(https://help.aliyun.com/document_detail/137663.html) 团队出品,为监控而生的数据库连接池
项目地址:https://gitcode.com/gh_mirrors/druid/druid
免费下载资源
·
项目集成了阿里的 Druid 数据库连接池,其中一句模糊查询报了如下错误:
重点在这里:
Error querying database. Cause: java.sql.SQLException: sql injection violation, syntax error: syntax error, error in :‘name like ‘%’ ? ‘%’) tmp_count’, expect RPAREN, actual QUES pos 72, line 1, column 71, token QUES : select count(0) from (SELECT * FROM ddr_role
where rolename like ‘%’ ? ‘%’) tmp_count
问题大致是因为项目集成了Druid,所以SQL在模糊查询那部分会出现SQL注入的问题。
报错SQL:
<select id="findRoleList" resultMap="role">
SELECT * FROM `ddr_role` where rolename like '%',#{rootname},'%'
</select>
修改后的SQL:
<select id="findRoleList" resultMap="role">
SELECT * FROM `ddr_role` where rolename like concat('%',#{rootname,jdbcType=VARCHAR},'%')
</select>
希望对大家有帮助吖😁~
GitHub 加速计划 / druid / druid
27.83 K
8.56 K
下载
阿里云计算平台DataWorks(https://help.aliyun.com/document_detail/137663.html) 团队出品,为监控而生的数据库连接池
最近提交(Master分支:3 个月前 )
f060c270 - 6 天前
1613a765
* Improve gaussdb ddl parser
* fix temp table 7 天前
更多推荐
已为社区贡献7条内容
所有评论(0)