关于mybatis like
来源:互联网 发布:中国可备案的域名后缀 编辑:程序博客网 时间:2024/06/05 05:21
在mybatis 中like常见的写法为
<if test="param.name != null and param.name !=''">
and NAME LIKE CONCAT( #{param.name ,jdbcType=VARCHAR}, '%')
</if>
或者
<if test="param.name != null and param.name !=''">
and NAME LIKE #{param.name ,jdbcType=VARCHAR}||'%'
</if>
最终翻译成的sql为 :
and NAME LIKE CONCAT( ?, '%')或者and NAME LIKE ?||'%'
但这样的写法在oracle10g中,如果该sql含有order by 那么它不会走索引
所以推荐的写法是:
<if test="param.name != null and param.name!=''">
<bind name="sys_bind_tag_name" value="''+_parameter.getParam().getName()+ '%'" />
and NAME LIKE #{sys_bind_tag_name,jdbcType=VARCHAR}
</if>
悲剧的是。那么它会提示某个bean没有提供name的get方法.如果你把#改成$则正常..
下载mybatis 源代码。发现报错的地方
也就是说。它是从bean里面找这个属性。而不是从boundsql的addtionalParameter里面找
原来我的mybatis分页插件中。有这样一句
好吧。。这种写法。等于清空了bondsql的addtionalParameter,改成如下
问题解决!
- 关于mybatis like
- MyBatis关于LIKE的处理方法
- mybatis中关于like的写法
- mybatis like
- MyBatis Like
- mybatis like
- mybatis中关于oracle数据库的like操作
- mybatis 关于 like %% 查询 mysql oracle sqlserver 数据库
- Mybatis中的like查询
- mybatis Like 写法
- mybatis like '%specific string%'
- Mybatis中的like查询
- myBatis Like 的使用
- mybatis mapper orderby like
- Mybatis中的like查询
- mybatis like 查询
- Mybatis循环处理 like
- MyBatis Like 拼接
- HDU 2188 悼念512汶川大地震遇难同胞――选拔志愿者(巴什博奕)
- 【iOS】iOS下高斯模糊效果的实现
- 快照技术原理
- Kaggle 手写识别题
- 【Leetcode】1. Two Sum
- 关于mybatis like
- yield 是什么?
- spring中的@Configration详解
- 架构设计:系统间通信(18)——服务治理与Dubbo 下篇(继续分析)
- 新的测试项
- 分布式机器学习框架:MxNet 前言
- IT自由职业者的赚钱利器
- 常使用的宏定义归类(新添加的一些)
- 【原创】Sublime Text 3设置吊炸天PHP开发环境