mybatis XML文件中特殊符号报错

今天写代码时,启动时突然报了一个xml异常,于是就抽时间记录了一下这个bug的解决方案。
下面是bug:
        Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 18;              columnNumber: 41; 元素内容必须由格式正确的字符数据或标记组成。
        大致看一下报错信息,能感觉时xml文件中sql的问题,根据报错中提示的行数,找到具体的sql,才发现sql那里报了一个红波浪线,特殊符号没有进行转义。
        解决方案:
      把小于符号进行转义一下,这是个特殊符号,需要进行转义,修改为<即可。
      另外,mybatis中特殊符号不止这一个,其他的补上。
                                  原符号   替换符号
                                        <        &lt;
                                        >        &gt;
                                        &        &amp;
                                        ,         &apos;
                                        "        &apos;
      但是严格来说,在XML中只有”<”和”&”是非法的,其它三个都是可以合法存在的,但是,把它们都进行转义是一个好的习惯。
也可采用<![CDATA[ ]]>特殊标签,将包含特殊字符的字符串封装起来。
       例如:
      <TitleName><![CDATA["姓名"]]></TitleName>

posted on 2022-06-11 15:15  //是我  阅读(359)  评论(0)    收藏  举报