zoukankan      html  css  js  c++  java
  • Mybatis

    select标签:

    id:相当于方法名

    parameterType:传值类型

    resultType:返回值类型

    值占位符:

    select * from user where username like 

    1. #{username}    // %王%

    2. '%${value}%'        //王

    3. "%"#{username}"%"          // 王

    resultMap标签:select标签使用resultMap代替resultType

    自定义resultMap标签,将id设置与select内的resultMap相同

    如以下代码,可将包装类的属性useId与数据库的字段列user_id对应

        <resultMap type="order" id="xxxxx">
            <id property="id" column="id" />
            <!-- property属性名,column是sql里的字段列名 -->
            <result property="userId" column="user_id" />
        </resultMap>
        <select id="getOrders" resultMap="xxxxx">
            SELECT id, user_id, number, createtime, note FROM orders        
        </select>

    include、where和 if 标签:

    1.include可引入sql标签里的内容:

        <select id="getUser" parameterType="user" resultType="user">
            <!-- include引入sql标签里的内容 -->    
        </select>
        <!-- sql片段 -->
        <sql id="select">
            select count(*) from user
        </sql>

    2.where标签可以自动添加where,同时处理sql语句中第一个and关键字

    3.使用 if 标签拼串生成sql语句:

        <select id="getUser" parameterType="user" resultType="user">
            <!-- include引入sql标签里的内容 -->
            <include refid="sqlid"></include>
            <where>
                <if test="sex!=null and sex!=''">
                    and sex=#{sex} 
                </if> 
                <if test="username!=null and username!=''"> 
                    and  username like "%"#{username}"%"
                </if>
            </where>
        </select>
        <!-- sql片段 -->
        <sql id="sqlid">
            select count(*) from user
        </sql>
  • 相关阅读:
    互斥锁
    信号量、互斥体和自旋锁
    【设计模式】template method(模板方法)-- 类行为型模式5.10
    C/C++中的auto关键词
    【设计模式】observer(观察者)-- 对象行为型模式5.7
    UML图
    MapReduce阅读
    shell提取文件后缀名,并判断其是否为特定字符串
    shell编程--遍历目录下的文件
    Linux shell字符串截取与拼接
  • 原文地址:https://www.cnblogs.com/god3064371/p/11969005.html
Copyright © 2011-2022 走看看