没有合适的资源?快使用搜索试试~ 我知道了~
mybatis动态sql详解,基础操作可以参考《mybatis基础操作》,希望对大家有帮助
资源推荐
资源详情
资源评论
Mybatis 动态 sql 详解
MyBatis 的动态 SQL 是基于 OGNL 表达式的,它可以帮助我们方便的在 SQL 语句中实现某些
逻辑。
MyBatis 中用于实现动态 SQL 的元素主要有:
if 就是简单的条件判断,利用 if 语句我们可以实现某些简单的条件选择。先来看如下一个例子:
1. <selectid="dynamicIfTest"parameterType="Blog"resultType="Blog">
2. select*fromt_blogwhere1=1
3. <iftest="title!=null">
4. andtitle=#{title}
5. </if>
6. <iftest="content!=null">
7. andcontent=#{content}
8. </if>
9. <iftest="owner!=null">
10. andowner=#{owner}
11. </if>
12. </select>
这条语句的意思非常简单,如果你提供了 title 参数,那么就要满足 title=#{title},同样如果
你提供了 Content 和 Owner 的时候,它们也需要满足相应的条件,之后就是返回满足这些条
件的所有 Blog,这是非常有用的一个功能,以往我们使用其他类型框架或者直接使用 JDBC 的
时候, 如果我们要达到同样的选择效果的时候,我们就需要拼 SQL 语句,这是极其麻烦的,
比起来,上述的动态 SQL 就要简单多了。
choose 元素的作用就相当于 JAVA 中的 switch 语句,基本上跟 JSTL 中的 choose 的作用和
用法是一样的,通常都是与 when 和 otherwise 搭配的。看如下一个例子:
1. <selectid="dynamicChooseTest"parameterType="Blog"resultType="Blo
g">
2. select*fromt_blogwhere1=1
3. <choose>
4. <whentest="title!=null">
5. andtitle=#{title}
6. </when>
7. <whentest="content!=null">
8. andcontent=#{content}
资源评论
tianqiqing2012
- 粉丝: 7
- 资源: 27
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功