1. sql注入漏洞:
jdbc 在使用 statement 传入 sql 语句时,如果传入的参数中有关建字单引号则会出现 sql 的注入漏洞
statement.jpeg
statement2.jpeg
本来只有一个关键字 and 但后来又传入了 or,导致注入漏洞
解决方案:
出现注入漏洞在于字符串的拼接,使用prepareStatement
注入漏洞.jpeg
使用占位符占好位置之后格式就固定了,即使传入一些会导致 sql 漏洞的关键字(比如or,or并不会被识别,只当做普通字符串处理)也不会出现问题
2. 数据库连接池
c3p0与dbcp区别:
dbcp没有自动的去回收空闲连接的功能
c3p0有自动回收空闲连接功能
网友评论