zoukankan      html  css  js  c++  java
  • 如何正确理解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

       

  • 相关阅读:
    Python的一些版本分析
    2006年的长春.NET俱乐部
    大病了一场,不过闲时对AJAX探索时,实现了IE TREE无刷新
    关于AJAX开发
    提供可在WSS上使用的MYTREE
    关于WSS搜索的问题
    转发:使用JavaScript删除ASP.NET生成的HttpCookie
    AJAX(2)
    在将WEBPART打包成*.CAB包和*.MSI安装包后,竟然无法将其安装到指定的WSS网站
    转发:Session研习笔记
  • 原文地址:https://www.cnblogs.com/meifanghua/p/11439457.html
Copyright © 2011-2022 走看看