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

       

  • 相关阅读:
    如何判断PHP 是ts还是nts版的
    让IE支持placeholder属性
    解决点击浏览器后退按钮页面过期的问题
    git记住用户名密码
    php保存base64数据
    azure注册码
    SQL Server 2008 R2密钥序列号
    SQL允许远程访问
    PHP生成表格
    PHP发起get post put delete请求
  • 原文地址:https://www.cnblogs.com/meifanghua/p/11439457.html
Copyright © 2011-2022 走看看