美文网首页
Mybatis动态Sql 2019-06-14

Mybatis动态Sql 2019-06-14

作者: 琴匣自鸣 | 来源:发表于2019-06-14 16:24 被阅读0次

基于OGNL(Object Graph Navigation Language)对象图表导航语言实现

主要元素 

1. if  where

当if内test的条件成立时if内的条件会被拼接上,如果where标签内有一个条件判断成立那么where标签会自动在sql语句添加where 并且可以避免第一个条件不成立第二条件成立出现where 后直接跟or 或者and导致sql语句错误情况,即可以智能处理or 和 and

2. trim(清除空格,同时应用四个属性后一定程度上可以替换where)

四个属性 prefix(前缀) suffix(后缀) prefixOverrides(前缀被替换内容) suffixOverrides(后缀被替换内容)

3.set 

if判断参数!=null,如果结果false则不进行set,参数!=null则进行set,避免了sql语句set有多个但是在实际应用中只传参其中几个导致其余自动传参为null使数据修改出错的问题

4. foreach 可以对数组或集合等进行循环
属性  item表示集合中每一个要还俗进行迭代时的别名zhiding 
         index指定一个名称,用于表示迭代的位置相当于下标
         open 表示该语句什么时候开始,同时可以加起始内容
         close 同上,表示结束可以加结尾内容
         separator 每次迭代之间以xxxx作为分隔符
         clooection 表示迭参数类型,三种情况如果是数组 collection=array 如果是List 则collection=list 如果是将数组或者list放入Map然后传参则collection="key值" 

5.choose(when otherwise) 类似于java里的switch, when==case  otherwise==default

相关文章

  • MyBatis动态SQL

    MyBatis 动态SQL 内容 Mybatis动态SQL在XML中支持的几种标签: if chose trim、...

  • MyBatis核心知识点

    (1)Mybatis动态sql是做什么的?都有哪些动态sql?能简述一下动态sql的执行原理不? Mybatis动...

  • MyBatis 动态SQL(*.xml)

    原文参考MyBatis 动态SQL MyBatis的动态SQL大大减少了拼接SQL语句时候的各种格式问题,这里摘录...

  • Mybatis动态SQL

    MyBatis Mybatis笔记连载上篇连接MyBatis缓存Mybatis笔记连载下篇连接 动态SQL 动态S...

  • MyBatis的动态SQL与日志Log4J、SQL语句构造器

    一、MyBatis动态SQL 动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似...

  • MyBatis学习:动态sql

    1.动态sql 动态sql是mybatis中的一个核心,什么是动态sql?动态sql即对sql语句进行灵活操作,通...

  • mybatis的xml文件的标签详解

    Mybatis #{}和${}和区别 mybatis获取方法参数 动态SQL

  • 第八章 动态SQL

    动态SQL中的元素介绍 动态SQL有什么作用 MyBatis提供了对SQL语句动态组装的功能 动态SQL中的元素 ...

  • JavaEE基础知识学习----MyBatis(四)动态SQL

    MyBatis的动态SQL MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似...

  • IT 每日一结

    mybatis动态sql 动态sql绝对是mybatis排列前几的闪光点之一。传统代码中的sql语句需要经过多个字...

网友评论

      本文标题:Mybatis动态Sql 2019-06-14

      本文链接:https://www.haomeiwen.com/subject/claufctx.html