国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

認(rèn)識MyBatis 之 MyBatis的動態(tài)SQL

這篇具有很好參考價(jià)值的文章主要介紹了認(rèn)識MyBatis 之 MyBatis的動態(tài)SQL。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


前言

本篇介紹MyBatis里如何使用動態(tài)SQL,了解如何去簡單使用動態(tài)標(biāo)簽;如有錯(cuò)誤,請?jiān)谠u論區(qū)指正,讓我們一起交流,共同進(jìn)步!



本文開始

MyBatis - 動態(tài) SQL

使用動態(tài)SQL的好處:根據(jù)不同的條件拼接 SQL 語句,提高了SQL的靈活性;

if標(biāo)簽

  • if標(biāo)簽:判斷時(shí)使用,滿足test中的判斷,執(zhí)行if條件
    格式:< if test=“xxx != null”> < /if >
    -寫在.xml文件中
    -test中的是類中屬性的值

trim標(biāo)簽

  • trim標(biāo)簽:判斷時(shí)使用,去除后綴 與 if標(biāo)簽配合使用
    格式:
    屬性:prefix: 這個(gè)語句前面加前綴,例如 左括號(
    suffix: 這個(gè)語句前面加后綴,例如 右括號(
    suffixOverrides:去掉整個(gè)語句后綴,例如 末尾的逗號 ,

示例:

<insert id="add4">
        insert into userinfo
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="username != null">
                username,
            </if>
            <if test="password">
                password,
            </if>
        </trim>
        values
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="username != null">
                #{username},
            </if>
            <if test="password != null">
                #{password},
            </if>
        </trim>
    </insert>

where標(biāo)簽

  • where標(biāo)簽:查詢時(shí)使用,如果有添加條件,就生成where語句;沒有就不添加條件,不會生成where語句;
    -可以去掉前綴and (如下示例,在只有第二個(gè)條件時(shí),where會自動去掉and)

示例:

 <select id="testWhere" resultType="com.example.demo.model.Userinfo">
        select * from userinfo 
        <where>
            <if test="id > 0">
                id=#{id}
            </if>
            <if test="username != null">
                and username=#{username}
            </if>
        </where>
    </select>

update + set 標(biāo)簽

  • update + set標(biāo)簽:修改時(shí)使用;
    -會自動去掉最后的后綴逗號,
 <update id="update">
        update userinfo
        <set>
            <if test="username != null">
                username=#{username},
            </if>
            <if test="password != null">
                password=#{password}
            </if>
        </set>
        where id=#{id}
    </update>

delete + foreach 標(biāo)簽

  • delete + foreach標(biāo)簽:刪除時(shí)使用,刪除多個(gè)就需要遍歷刪除,這就使用了foreach;
    屬性:collection: 為傳遞過來的集合名稱;
    open: 語句前綴;
    close: 語句后綴;
    item: 遍歷的每個(gè)對象的名稱;
    separator: 每次遍歷 的 分隔符;
 <delete id="delByIds">
        delete from userinfo
        where id in
        <foreach collection="lists" open="(" close=")" item="id" separator=",">
            #{id}
        </foreach>
    </delete>

總結(jié)

???各位讀友,本篇分享到內(nèi)容如果對你有幫助給個(gè)??贊鼓勵(lì)一下吧??!
感謝每一位一起走到這的伙伴,我們可以一起交流進(jìn)步?。。∫黄鸺佑桶桑。。?/font>文章來源地址http://www.zghlxwxcb.cn/news/detail-634581.html

到了這里,關(guān)于認(rèn)識MyBatis 之 MyBatis的動態(tài)SQL的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【MyBatis】四、MyBatis中的動態(tài)SQL標(biāo)簽

    動態(tài)SQL語句是動態(tài)的拼接Mybatis中SQL語句的情況,可以動態(tài)的在Mybatis中使用SQL if語句的xml文件: 傳入對象來進(jìn)行調(diào)用: where標(biāo)簽中的and會被自動去掉,并且若沒有合適的內(nèi)容,則不會添加where 注意:where標(biāo)簽只能去掉條件前的and、五福去掉條件后的and trim標(biāo)簽會在其內(nèi)容

    2024年02月09日
    瀏覽(18)
  • Springboot + Mybatis 同時(shí)支持多類數(shù)據(jù)庫SQL的解決方案

    pg、Oracle、MySQL 的字符串轉(zhuǎn)日志函數(shù)不同,可通過 _databaseId 來判斷該執(zhí)行哪段SQL 多余的代碼就不寫上了,直接根據(jù)下列代碼就能理解。

    2024年02月09日
    瀏覽(25)
  • MyBatis 03 -MyBatis動態(tài)SQL與分頁插件

    MyBatis 03 -MyBatis動態(tài)SQL與分頁插件

    MyBatis的映射文件中支持在基礎(chǔ)SQL上添加一些邏輯操作,并動態(tài)拼接成完整的SQL之后再執(zhí)行,以達(dá)到SQL復(fù)用、簡化編程的效果。 動態(tài)查詢 where標(biāo)簽和if標(biāo)簽組合使用 動態(tài)修改 1.1 sql sql標(biāo)簽的作用是提取公共的sql代碼片段 sql id屬性:唯一標(biāo)識 include refid屬性:參照id 動態(tài)查詢

    2023年04月15日
    瀏覽(31)
  • 【MyBatis】2、MyBatis 的動態(tài) SQL 和增刪改操作

    【MyBatis】2、MyBatis 的動態(tài) SQL 和增刪改操作

    注意: openSession() 的參數(shù)默認(rèn)值是 false (不自動提交事務(wù)) ?? 設(shè)置新插入記錄的主鍵(id)到參數(shù)對象中 動態(tài) SQL 官方文檔:https://mybatis.org/mybatis-3/zh/dynamic-sql.html ☆ 批量插入: ?? 批量添加的執(zhí)行效率比 多次 單個(gè)添加的執(zhí)行效率要高,但是無法獲取到新插入的記錄的主

    2024年02月07日
    瀏覽(19)
  • MyBatis 實(shí)現(xiàn)動態(tài) SQL

    MyBatis 實(shí)現(xiàn)動態(tài) SQL

    ?MyBatis 中的動態(tài) SQL 就是 SQL語句可以根據(jù)不同的情況情況來拼接不同的sql。 本文會介紹 xml 和 注解 兩種方式的動態(tài)SQL實(shí)現(xiàn)方式。 先創(chuàng)建一個(gè)數(shù)據(jù)表,SQL代碼如下: 數(shù)據(jù)庫表和JAVA對象的對應(yīng)如下: ? 平時(shí)在注冊賬號時(shí)會有一些非必填項(xiàng),而我們就可以使用 if 標(biāo)簽來跟據(jù)條

    2024年02月19日
    瀏覽(25)
  • mybatis----動態(tài)Sql

    mybatis----動態(tài)Sql

    1.if標(biāo)簽 通過if標(biāo)簽構(gòu)建動態(tài)條件,通過其test屬性的true或false來判斷該添加語句是否執(zhí)行。 mapper接口 映射文件 這里test中的屬性名與Account類中的屬性名一致。例如:上述文件的第一個(gè)if標(biāo)簽中的id嚴(yán)格與Account中屬性名id一致。 測試 結(jié)果: 執(zhí)行效果等同于select * from account whe

    2024年01月23日
    瀏覽(23)
  • Mybatis-動態(tài)SQL

    Mybatis-動態(tài)SQL

    Mabits是一個(gè)Java持久化框架,它提供了動態(tài)SQL的功能。動態(tài)SQL是一種根據(jù)不同條件動態(tài)生成SQL語句的技術(shù)。 在Mabits中,動態(tài)SQL通常是通過使用一組特殊的標(biāo)簽和代碼塊來實(shí)現(xiàn)的,這些標(biāo)簽和代碼塊可以根據(jù)條件包含或排除不同的部分,從而生成不同的SQL語句。 動態(tài)SQL可以讓開

    2024年02月06日
    瀏覽(26)
  • MyBatis:動態(tài) SQL 標(biāo)簽

    MyBatis:動態(tài) SQL 標(biāo)簽

    MyBatis 動態(tài) SQL 標(biāo)簽 ,是一組預(yù)定義的標(biāo)簽,用于構(gòu)建動態(tài)的 SQL 語句,允許在 SQL 語句中使用條件、循環(huán)和迭代等邏輯。通過使用動態(tài) SQL 標(biāo)簽,開發(fā)者可以根據(jù)不同的條件和參數(shù)生成不同的 SQL 語句,實(shí)現(xiàn)更加靈活的數(shù)據(jù)訪問操作。但是,需要謹(jǐn)慎處理 SQL 注入問題,確保所

    2024年02月04日
    瀏覽(26)
  • MyBatis - 動態(tài) SQL

    動態(tài) SQL 是 MyBatis 提供的一個(gè)非常強(qiáng)大的功能,它可以讓我們在運(yùn)行時(shí)構(gòu)建 SQL 語句。這意味著我們可以根據(jù)應(yīng)用程序的需求來構(gòu)建符合要求的 SQL。通常情況下,這是非常有用的,因?yàn)橛袝r(shí)我們不知道要查詢哪些表,或者要查詢哪些列。此外,動態(tài) SQL 還可以用來構(gòu)建動態(tài)修改

    2024年02月07日
    瀏覽(18)
  • 【MyBatis】動態(tài)SQL

    【MyBatis】動態(tài)SQL

    動態(tài) SQL 是 MyBatis 的強(qiáng)大特性之一。如果你使用過 JDBC 或其它類似的框架,你應(yīng)該能理解根據(jù)不同條件拼接 SQL 語句有多痛苦,例如拼接時(shí)要確保不能忘記添加必要的空格,還要注意去掉列表最后一個(gè)列名的逗號。利用動態(tài) SQL,可以徹底擺脫這種痛苦。具體的定義大家可以參

    2024年01月17日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包