美文网首页
mybatis 中的<![CDATA[ ]]>标签用

mybatis 中的<![CDATA[ ]]>标签用

作者: onlyHalfSoul | 来源:发表于2018-06-12 09:34 被阅读8次

    最近在看博客时,发现有人使用了<![CDATA[ ]]>这样一个标签包住Mapper中的sql语句,不清除是什么意思,后来查了一下,这个标签是直译sql的意思。

    <![CDATA[ ]]>是xml语法,包含在其中的文本不会被xml语法解析,比如sql中的"<"和">",不会被解析为xml的尖括号,而是不转义的字符串。

    
    
    <select id="allUserInfo" parameterType="java.util.HashMap" resultMap="userInfo1">  
             <![CDATA[  
                 SELECT newsEdit,newsId, newstitle FROM shoppingGuide  WHERE 1=1  AND  newsday > #{startTime} AND newsday <= #{endTime}  
               ]]>  
           <if test="etidName!=''">  
         AND newsEdit=#{etidName}  
         </if>  
    </select>  
    

    因为这里有 ">" "<=" 特殊字符所以要使用 <![CDATA[ ]]> 来注释,但是有<if> 标签,所以把<if>等 放外面

    注:经过测试,mybatis已经基本克服了sql转义的问题,这个标签可以谨慎使用。

    相关文章

      网友评论

          本文标题:mybatis 中的<![CDATA[ ]]>标签用

          本文链接:https://www.haomeiwen.com/subject/mtqleftx.html