您的位置:首页 > 数据库

ibatis的like关键字用法小结

2016-09-20 18:53 176 查看
前天,有朋友问我,select * from T_STUDENT where S_NAME like '张%';这种like语句在ibatis中怎么写,他们现在的项目是用ibatis作为持久层的框架。

我的第一反应是这样写:

<select id="showOneStudentByName" parameterClass="String" resultMap="studentORM">

select * from t_stu where s_name like #name#

</select>

但是在调用中需要在参数的前后加上%,比如这样:

return sqlMapper.queryForList("Student.showOneStudentByName", "%"+name+"%");

虽然这样可行,但总显得有些不协调。仔细看了ibaitis的文档后发现最好的写法是这样

<select id="showOneStudentByName" parameterClass="String" resultMap="studentORM">

select * from t_stu where s_name like '%'||#name#||'%'

</select>

在调用的时候就不用去前后加%了。

注意:sql语句不要写成select * from t_stu where s_name like '%$name$%',这样极易受到注入攻击。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iBATIS SQL 框架 Blog