• 如何正确理解Mybatis


    一:mybatis是一个持久层的框架,是apache下的顶级项目。

    二:mybatis让程序员将主要精力放在sql上,通过mybatis提供的映射方式,自由灵活生成(半自动化,大部分需要程序员编写sql)满足需求的sql语句。所以mybatis中SQL是一个非常重要的部分,当然框架也对其中SQL语句进行了许多优化

    三:mybatis可以将向 preparedStatement中的输入参数自动进行输入映射,将查询结果集灵活映射成java对象。(输出映射)

    mybatis的工作原理

     0

    mybatis中的动态SQL语句其中都是一些标签的使用

    1. <if  test="字段的判断"></if>但是<if>标签的局限性较大所以引入下面的<where><if></if></where>
    <if test=”name!=null”>
        
    </if>

              

            2.<where><if> </if></where>此标签的功能是 在sql语句的开头加上where.去除头部为and 或or开头。

     <where>
         <if test=””></if>
         <if test=””></if>
     </where>

           3.<set> <if></if></set>  Set: 在sql语句前添加set 并且会把sql语句中最后的逗号去除。(主要用于更新数据)

     <set>
    <if test=””></if>
    <if test=””></if>
    
    </set>

          4.trim标签可以在前缀中加入SQL语句中的where 或者set 可以用来替代<where></where> <set></set>标签

     <trim prefix=”前缀” prefixoverrides=”去除的前缀”  suffix=”后缀” suffixoverrides=”去除后缀”>
          <if test=””></if>
          <if test=””></if>
    
     </trim>

          5. choose+when+otherwise 和Java中的  switch语句有类似的效果

     

          6.还有一些简化SQL语句的SQL的语句段  以此来减少代码的复用性 在SQL中引入标签<include>标签

    <sql id="Base_Column_List">
        id, NAME, age, sex
    </sql>
    <include refid="Base_Column_List"/> 

            7.foreach标签的使用例如在查询多个id

       

  • 相关阅读:
    linux ubuntu装机到可实现java(eclipse,intellij IDEA,android)开发全过程
    浅谈线程同步的几种方法
    KMP算法,这是我看到的最简单的最好理解的KMP算法
    常用基础算法C++实现
    堆内存和栈内存详解(转载)
    数据结构=。= 链表
    倒排索引--资料1
    倒排索引简单理解
    简单理解Socket
    8.结构体的使用 2015.12.3
  • 原文地址:https://www.cnblogs.com/meifanghua/p/11439457.html
Copyright © 2020-2023  润新知