您的位置:首页 > 其它

【iBATIS】The content of elements must consist of well-formed character data or markup

2017-01-15 22:01 393 查看
报错提示:The content of elements must consist of well-formed character data or markup

因为语句中有一个小于号“<”,在XML中,会被当成一个页面元素来解析,不会处理为mysql的SQL语句的组成部分,修改如下:

1、在xml的sql语句中,不能直接用大于号、小于号要用转义字符

如果用小于号会报错误如下:

org.apache.ibatis.builder.BuilderException: Error creating document instance.  Cause: org.xml.sax.SAXParseException: The content of elements must consist of well-formed character data or markup.

解决办法:

1,转义字符

                     <                                 
                     <
                     小于号                                           
                     >
                     >                                      
                     大于号
                     &
                     &
                     和
                     '
                     ’
                     单引号
                     "
                     "
                     双引号
例如: state <= 3 则改成  state <= 3

2、使用<![CDATA[]]>标记

注意:<![CDATA[ ]]>标记的sql语句中的<where> <if>等标签不会被解析

     <![CDATA[
             state <= 3
         
]]>

这样,将会把SQL语句中与XML页面元素相同的元素屏蔽,是的XML不将其解析为XML的元素,从而生成正确的SQL语句。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐