最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis XML文件中使用CDATA標(biāo)簽的實(shí)現(xiàn)

 更新時(shí)間:2026年03月08日 09:23:54   作者:小恒恒  
本文主要介紹了Mybatis XML文件中使用CDATA標(biāo)簽,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

0.背景

當(dāng)下,使用MybatisXML文件書寫復(fù)雜SQL,依然是一種主流的選擇。那么,我們?cè)跁鴮?code>SQL語(yǔ)句時(shí),要時(shí)刻提醒自己,自己正在書寫一個(gè)XML文件,XML文件對(duì)于一些特殊字符,是會(huì)進(jìn)行解析的。就比如< >。

1.使用<![CDATA[]]>

CDATA,意為 character data,是標(biāo)記語(yǔ)言SGML與XML,表示文檔的特定部分是普通的字符數(shù)據(jù),而不是非字符數(shù)據(jù)或有特定、限定結(jié)構(gòu)的字符數(shù)據(jù)。

我們舉個(gè)例子:

            <if test="startTimeLong!=null"><![CDATA[
                and happen_time > #{startTimeLong}
            ]]></if>

這種方法很好,只是,我們需要手動(dòng)敲入這個(gè)標(biāo)簽嗎?不用的,我們就正常寫語(yǔ)句,交給IDEA就可以了,當(dāng)我們敲完判斷條件后,按下Alt + Enter,就會(huì)彈出提示框,選擇Convert text to CData就可以了。

2.<![CDATA[]]>轉(zhuǎn)換成普通的text

通常情況下,我們使用這個(gè)標(biāo)簽就能搞定一些情況,但是對(duì)于部分人來(lái)講,他們會(huì)覺得混亂。那么轉(zhuǎn)換后的文本,再使用Convert CData to text 就可以了。

就可以得到我們想要的內(nèi)容:

            <if test="startTimeLong!=null">
                and happen_time > #{startTimeLong}
            </if>

當(dāng)然了,IDEA對(duì)于<支持得不好,所以沒(méi)有使用<來(lái)做演示,遇到<的情況還得手動(dòng)移動(dòng)一下]]到句子末尾。

3.XML文件中的特殊字符的寫法

特殊字符轉(zhuǎn)義字符
&&amp;
<&lt;
&gt;
"&quot;
&apos;

4.總結(jié)討論

如果你是在寫SQL,能夠使用<![CDATA[]]>,那是最好,大部分情況下你都不需要想,直接套就行。

若是自己輸出XML文件時(shí),情況就不同了,比如:

CDATA節(jié)不能嵌套。如果文本中需要包含3字符序列]]>,需要用兩個(gè)相鄰的CDATA節(jié)表示它,如下例:

<![CDATA[]]]]><![CDATA[>]]>

故,在自己進(jìn)行XML文件輸出時(shí),應(yīng)該拋棄此標(biāo)簽,避免一些奇怪的問(wèn)題,而是使用字符串替換的方式,將特殊字符的轉(zhuǎn)義字符替換過(guò)來(lái)。

總結(jié)一下:

手寫文件CDATA,輸出文件用轉(zhuǎn)義!

到此這篇關(guān)于Mybatis XML文件中使用CDATA標(biāo)簽的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Mybatis使用CDATA標(biāo)簽內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot添加日志鏈TraceId方式

    SpringBoot添加日志鏈TraceId方式

    配置SpringBoot日志TraceId,利用MDC和攔截器注入traceid變量,通過(guò)logback-spring.xml設(shè)置,使%X{traceid}可獲取,提升問(wèn)題排查效率
    2025-08-08
  • JAVA異常信息Exception?e及e的相關(guān)方法解讀

    JAVA異常信息Exception?e及e的相關(guān)方法解讀

    這篇文章主要介紹了JAVA異常信息Exception?e及e的相關(guān)方法解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 詳解Spring的autowire-candidate設(shè)計(jì)

    詳解Spring的autowire-candidate設(shè)計(jì)

    現(xiàn)在的Spring應(yīng)用通常都是基于注解開發(fā),但是對(duì)Spring感興趣的同學(xué)可以借助Spring早期基于Xml配置的各種運(yùn)用來(lái)加深對(duì)Spring框架內(nèi)部的理解和體會(huì)Spring框架的設(shè)計(jì)之妙。這篇文章我們就來(lái)談?wù)刋ml配置之default-autowire-candidates
    2021-06-06
  • Springboot實(shí)現(xiàn)驗(yàn)證碼登錄

    Springboot實(shí)現(xiàn)驗(yàn)證碼登錄

    這篇文章主要為大家詳細(xì)介紹了Springboot實(shí)現(xiàn)驗(yàn)證碼登錄,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • 關(guān)于Integer.parseInt()方法的使用

    關(guān)于Integer.parseInt()方法的使用

    這篇文章主要介紹了關(guān)于Integer.parseInt()方法的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 一起來(lái)了解Java的File類和IO流

    一起來(lái)了解Java的File類和IO流

    這篇文章主要為大家詳細(xì)介紹了Java?File類和IO流,在Java學(xué)習(xí)中,file類與io流是非常重要的部分,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • 深度剖析Java成員變量、局部變量和靜態(tài)變量的創(chuàng)建和回收時(shí)機(jī)

    深度剖析Java成員變量、局部變量和靜態(tài)變量的創(chuàng)建和回收時(shí)機(jī)

    這篇文章主要介紹了深度剖析Java成員變量、局部變量和靜態(tài)變量的創(chuàng)建和回收時(shí)機(jī),成員變量是定義在類中的變量,每個(gè)類的實(shí)例都會(huì)擁有自己的成員變量。它們的生命周期與對(duì)象的創(chuàng)建和銷毀相對(duì)應(yīng),下面我將詳細(xì)介紹它們的特點(diǎn)和生命周期,需要的朋友可以參考下
    2023-07-07
  • Spring筆記-@Order注解和Ordered接口解析

    Spring筆記-@Order注解和Ordered接口解析

    這篇文章主要介紹了Spring筆記-@Order注解和Ordered接口,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 詳解Spring Boot下Druid連接池的使用配置分析

    詳解Spring Boot下Druid連接池的使用配置分析

    本篇文章主要介紹了詳解Spring Boot下Druid連接池的使用配置分析,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 一文解讀java.nio.ByteBuffer

    一文解讀java.nio.ByteBuffer

    這篇文章主要介紹了java.nio.ByteBuffer的用法解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評(píng)論

阿城市| 兰州市| 革吉县| 皮山县| 浦城县| 兴文县| 额尔古纳市| 武冈市| 麻栗坡县| 吴川市| 永平县| 观塘区| 辉南县| 拜城县| 阿坝县| 星子县| 磐石市| 泰顺县| 碌曲县| 布拖县| 翁牛特旗| 大同县| 涪陵区| 红原县| 乐山市| 平利县| 兰坪| 周宁县| 玉山县| 沂水县| 景谷| 保德县| 邹城市| 淳化县| 德化县| 溧水县| 河北区| 彩票| 五常市| 方山县| 临泽县|