系统:WIN8.1

数据库:Oracle 11GR2

开发工具:MyEclipse 8.6

框架:Spring3.2.9、SpringMVC3.2.9、MyBatis3.2.8


 

用MyBatis写排序的时候字段很多,于是想当然的就把需要排序的字段用String类型扔到了配置文件里面。但是却没有起到效果。后来查阅资料,发现应该使用$符号。

 

  • #符号将传入的数据都当做一个字符串,会对数据增加一个引号,如 order by #userid# , userid对应的值是10001,解析后就是 order by '10001' 。
  • $符号将传入的数据直接显示在sql中。如 order by $userid$ , userid对应的值是10001,解析后结果为 order by userid。

#可以最大程度防止sql注入,$则无法防止sql的注入,一般课可以传入数据库对象,比如表明或者字段名称。使用的时候需要注意。

相关文章:

  • 2021-07-09
  • 2021-12-04
  • 2021-12-29
  • 2022-12-23
  • 2021-07-23
  • 2021-10-26
  • 2021-09-06
  • 2021-12-03
猜你喜欢
  • 2021-11-16
  • 2021-09-29
  • 2021-06-20
  • 2022-12-23
  • 2021-12-31
  • 2022-01-19
  • 2021-08-18
相关资源
相似解决方案