用户名输入:
admin'or'1'='1
或者
admin'or''='
密码输入:
admin'or'1'='1
系统就能登录
执行sql:
where
and user.USER_NAME='admin'
or '1'='1'
and user.PASSWORD='46b19f09670fe38d482e20cf0bb1db1e'
解决方案:
1、SQL写死,不能用入参构造hql,from SysUser where userName = ? and password = ?
2、SQL动态参数使用?,然后query.setParameter(i, params.get(i)) 如此设置查询参数