mybatis在xml中处理大于号,解决The content of elements must consist of well-formed character data or markup

使用mybatits启动报错 

nested exception is 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.


这是因为mybatis的mapper文件是xml格式的,所以不允许出现类似“>”这样的字符,解决方案如下:


第一种方法:

使用转义字符把>和<替换掉,然后就没有问题了。

例如 SELECT * FROM test WHERE  start_date  &lt;= CURRENT_DATE AND end_date &gt;= CURRENT_DATE


附:XML转义字符


                     &lt;                                 

                     <

                     小于号                                           

                     &gt;

                     >                                      

                     大于号

                     &amp;

                     &

                     和

                     &apos;

                     ’

                     单引号

                     &quot;

                     "

                     双引号



第二种方法:

因为这个是xml格式的,所以可以使用<![CDATA[  ]]>符号进行说明,将此类符号不进行解析 
你的可以写成这个: 

mapper文件示例代码

<![CDATA[ when min(starttime)<='12:00' and max(endtime)<='12:00' ]]>
说明:此篇博客整理转载自 onyas的博客 mybatis在xml文件中处理大于号小于号的方法

猜你喜欢

转载自blog.csdn.net/Lin_xiaofeng/article/details/79128291