ibatis模糊查询和动态组合查询配置
来源:互联网 发布:java工程师职业发展 编辑:程序博客网 时间:2024/06/11 10:06
这几天用到ibatis的模糊查询和动态查询,在网上找了好多资料,现在把方法总结如下:
模糊查询
首先是模糊查询的问题,开始时我使用如下条件:select * from user wherename like '%#value#%'. 可是怎么也不行,好像还报错了.后来在网上找到了解决方法,就是使用$来代替#号.
1>写成: like '%$value$%' 就可以了, 模糊查询不能用#,#是用prepareStatement的插入参数,$是文本替换 。
2>同时还找到另一个方法: like '%' || #value# || '%' , 查询出来的结果也是正确的,但是在网上有人说这个写法是oracle的写法,至于在其他数据库中内否运行成功就没有试过。
动态查询
多条件组合查询,开始时,我也在想这个问题,总不能为每一个查询都写一个SQL配制吧,这样太........后来参考一些文档,发现,原来IBATIS里提供了动态映射.示例如下:
<sqlid="TsimpSysOrgProp.findPage.where">
<dynamicprepend="WHERE">
<isNotEmptyprepend="AND"property="id">
ID = #id#
</isNotEmpty>
<isNotEmptyprepend="AND"property="propCode">
PROP_CODElike '%$propCode$%'
</isNotEmpty>
<isNotEmptyprepend="AND"property="propName">
PROP_NAME like'%$propName$%'
</isNotEmpty>
<isNotEmptyprepend="AND"property="propType">
PROP_TYPE =#propType#
</isNotEmpty>
</dynamic>
</sql>
<isPropertyAvailable>属性是存在
<isNotPropertyAvailable> 属性不存在
<isNull> 属性值是null
<isEmpty> 判断Collection.size<1或String.length()<1
<isEqual> 等于
<isNotEqual> 不等于
<isGreaterThan> 大于
<isGreaterEqual> 大于等于
<isLessThan> 小于
<isLessEqual> 小于等于
这是参考http://blog.sina.com.cn/s/blog_6955fc9f010143pj.html网站的,如果想详细了解就到此网站看看。
- ibatis模糊查询和动态组合查询配置
- ibatis动态sql配置(in实例,模糊查询等)
- 如何进行ibatis动态多条件组合查询以及模糊查询
- 如何进行ibatis动态多条件组合查询以及模糊查询(oracle,mysql)
- 如何进行ibatis动态多条件组合查询以及模糊查询
- ibatis 模糊查询和多条件查询
- 数据库组合查询和模糊查询
- 关于ibatis中模糊查询配置
- iBatis的模糊查询
- IBATIS模糊查询
- Ibatis模糊查询
- ibatis中的模糊查询
- ibatis模糊查询(like)
- Ibatis字段模糊查询
- ibatis模糊查询
- iBatis like模糊查询
- ibatis模糊查询
- IBATIS查询 模糊查询分享
- Mysql物理拷贝恢复数据库
- AXIAL0.4
- Objective-C编码风格规范
- 笔试题经典算法:查找中位数
- 病毒测试代码(判断杀软优劣)
- ibatis模糊查询和动态组合查询配置
- standardtool
- Android sensor开关问题
- Cocoa Tips
- 集合转换成数组的两种方法---toArray()和toArray(T[] a)
- 第一部分:OLE Drag&Drop 介绍
- 注销返回到登录界面后点击浏览器回退时不能再次进入原页面的方法
- TCO 2013 Round 1A
- 如何Linux下得到CPU、内存及PCI信息