mybatis的#和$的区别以及order by注入问题

 我来答
jx...0@163.com
2017-04-09 · TA获得超过161个赞
知道答主
回答量:184
采纳率:0%
帮助的人:33.8万
展开全部
你好
#传入数据都字符串自传入数据加双引号:order by #user_id#传入值111,解析sql值order by "111", 传入值id则解析sqlorder by "id".  2. $传入数据直接显示sql:order by $user_id$传入值111,解析sql值order by user_id, 传入值id则解析sqlorder by id.  3. #式能够程度防止sql注入  4.$式防止Sql注入5.$式般用于传入数据库象例传入表名.  6.般能用#别用$.MyBatis排序使用order by 态参数需要注意用$#字符串替换默认情况使用#{}格式语导致MyBatis创建预处理语句属性并背景设置安全值(比?)做安全迅速首选做想直接SQL语句插入改变字符串比像ORDER BY使用:ORDER BY ${columnName}MyBatis修改或转义字符串重要:接受用户输内容并提供给语句变字符串做安全导致潜SQL注入攻击应该允许用户输入些字段或者通自行转义并检查
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式