ibatis实战之使用内联参数--用$做占位符
----------
使用内联参数的另一种方式就是使用替代($)语法,它可以用来把值直接插入到SQL语句之中(在SQL语句被转变为参数化语句之前)。但是使用这种方式时要非常小心,因为它可能使你暴露给SQL注入,另外过度使用还可能造成性能问题。
以下是一种在ibatis中处理LIKE运算符的方法示例:
<select id="getByLikeCity" resultClass="Account">
select accountId,
username,
password,
firstName,
lastName,
address1,
address2,
city,
state,
postalCode,
country
from Account
where city like '%$value$%'
</select>
以上这个语句同前一个语句的区别在于:ibatis如何处理传递给语句的参数。该语句的调用方式和之前那个语句的调用方式完全一致的:
accountList = sqlMap.queryForList("Account.getByLikeCity","burg");
这次,ibatis把语句转化为如下形式:
select accountId,
username,
password,
firstName,
lastName,
address1,
address2,
city,
state,
postalCode,
country
from Account
where city like '%bury%'
此语句中并没有设置任何参数,因为这个语句已经是完整的,但是使用这种技术时需要牢记的一点就是:它使得你的应用程序更容易受到SQL注入的攻击。
分享到:
相关推荐
iBATIS-SqlMaps-2-Tutorial_cniBATIS-SqlMaps-2-Tutorial_cn.pdf.pdfiBATIS-SqlMaps-2-Tutorial_cn.pdfiBATIS-SqlMaps-2-Tutorial_cn.pdf
ibatis缓存介绍 - 勇泽 - 博客园ibatis缓存介绍 - 勇泽 - 博客园ibatis缓存介绍 - 勇泽 - 博客园ibatis缓存介绍 - 勇泽 - 博客园
apache开源项目源码ibatis-3-core-src-3.0.0.227 ibatis框架java源程序 spring,struts,hibernate,ibatis,框架源码 各种ibatis框架应用源码,你会从中得到意想不到的效果! apache开源组织开发的开源项目源码,其...
转ibatis动态sql - phoebus0501 - 博客园.mht
ibatis-sqlmap ibatis-sqlmap-2 ibatis-sqlmap-2.jar.zip
iBATIS-SqlMaps-2-Tutorial_en.rar
java iBATIS-SqlMaps-2-快速入门教程
ibatis-3-core-3.0.0.242.jar.zipibatis-3-core-3.0.0.242.jar.zipibatis-3-core-3.0.0.242.jar.zipibatis-3-core-3.0.0.242.jar.zipibatis-3-core-3.0.0.242.jar.zip
iBATIS-SqlMaps-2-Tutorial_cn
ibatis实战中文版 一共2个文件 ibatis in action
ibatis实战中文版 一共2个文件 ibatis in action
ibatis-3-core-3.0.0.242.zip ibatis-3-core-3.0.0.242.zip ibatis-3-core-3.0.0.242.zip ibatis-3-core-3.0.0.242.zip
iBATIS-SqlMaps-2-Tutorial_en.pdf
Struts+Spring+Ibatis环境配置(一) - zwjxf的专栏 - 博
《iBATIS实战》是讲述iBATIS框架的权威著作。书中既详实地介绍了iBATIS的设计理念和基础知识,也讨论了动态SQL、高速缓存、DAD框架等高级主题,还讲解了iBATIS在实际开发中的应用。《iBATIS实战》的最后给出了一个...
ibatis-3-core-3.0.0.200
ibatis+spring之Ajax应用-根据车牌查询所在省
iBATIS实战
ibatis与spring整合,内附文档