zoukankan      html  css  js  c++  java
  • mybatis常用标签

    <if>标签

    if元素是最常用的判断语句相当于java中的if语句,他常常与test属性联合使用,if  test 就相当于判定, 若符合标签标签中的条件,则在SQL语句上添加<if></if>内的条件下面代码实战我们会详细讲到

     

    增删改查就不说了。

    <where>标签

    where标签经常跟if标签搭配使用,where标签会判断if标签里的条件是否成立,如果有条件成立则会拼接执行该条件下的sql语句。where标签避免所有条件都为空的时候出现“select * from user where ”这种会出错的情况,当然我们也可以在where后面加入“1=1”简单的解决。

    <set>标签

    set标签一般用在update语句中,set标签与where标签类似,当我们在update语句里碰到多个字段相关的问题,在这种情况下我们就会用到set标签,他也是判断if标签里的条件是否成立,然后拼接执行sql语句。

    <choose>标签

    相比于if标签二选一,choose标签就有了第三种选择,或者更多的选择,在映射器的动态语句中使用choose..when..otherwise..这三个元素就能满足不同的业务要求,Mybatis会根据参数的设置进行判断,来拼接组装sql语句,当when标签下无满足条件,则会执行otherwise标签里的语句。

    <foreach>标签

    foreach元素是一个循环语句,他的作用是遍历集合,他能够很好的支持数组和List的集合。并对此提供遍历,foreach标签常用于in这样的语法里,进行批量处理

    resultMap 标签

     基本作用:建立SQL查询结果字段与实体属性的映射关系信息

     查询的结果集转换为java对象,方便进一步操作

     将结果集中的列与java对象中的属性对应起来并将值填充进去


    <resultMap id="getStudentRM" type="EStudnet">
    <id property="id" column="ID"/>
    <result property="studentName" column="Name"/>
    <result property="studentAge" column="Age"/>
    </resultMap>
    <select id="getStudent" resultMap="getStudentRM">
    SELECT ID, Name, Age
    FROM TStudent
    </select>
    标签说明:
    主标签
    id:该resultMap的标志
    type:返回值的类名,此例中返回EStudnet类
    子标签:

    id:用于设置主键字段与领域模型属性的映射关系,此处主键为ID,对应id。
    result:用于设置普通字段与领域模型属性的映射关系

    trim标签
     trim是更灵活的去处多余关键字的标签,他可以实践where和set的效果。

     where例子的等效trim语句:

    <!-- 查询学生list,like姓名,=性别 -->     
    <select id="getStudentListWhere" parameterType="StudentEntity" resultMap="studentResultMap">     
        SELECT * from STUDENT_TBL ST      
        <trim prefix="WHERE" prefixOverrides="AND|OR">     
            <if test="studentName!=null and studentName!='' ">     
                ST.STUDENT_NAME LIKE CONCAT(CONCAT('%', #{studentName}),'%')      
            </if>     
            <if test="studentSex!= null and studentSex!= '' ">     
                AND ST.STUDENT_SEX = #{studentSex}      
            </if>     
        </trim>     
    </select>     

    SQL标签

    更多用于写sql语句的一部分,写在配置文件中的常量

    include标签

    用于引用常量

    ----------------------------------------------------------------------

    ----------------------------------------------------------------------

    mybatis 除了使用xml方式还有别的方式吗?

    还可以吧xml改为Mapper接口 

  • 相关阅读:
    JQuery.Ajax()的data参数类型
    通过拖动表格行进行行排序
    jquery animate()背景色渐变的处理
    JavaScript代码不执行
    Java性能调优笔记
    tika提取pdf信息异常
    Solr字段配置错误
    Oracle查询字符集
    zookeeper中Watcher和Notifications
    zookeeper适用场景:分布式锁实现
  • 原文地址:https://www.cnblogs.com/tyadmin/p/11241594.html
Copyright © 2011-2022 走看看