XML解析中转义字符问题

      XML中不允许出现一些特殊字符,这些字符需要使用转义字符代替.XML文件中不允许出现一些特殊字符,对这些特殊字符XML采用转义字符代替或者使用<![CDATA[ ]]>声明,<![CDATA[]]>标记所包含的内容为纯文本,不会进行转义;

XML特殊字符

显示结果描述转义字符十进制
<小于号     &lt; &#60;
>大于号   &gt;    &#62;
&与号   &amp;   &#38;
"双引号    &quot;   &#34;
'单引号   &apos;    &#39;
×乘号     &times;  &#215;
÷除号&divde;    &#247;
 空格&nbsp;    &#160;
    

 

 

 

 

 

 

 

 

 

 

常见异常内容:

javax.xml.bind.UnmarshalException
 - with linked exception:
[org.xml.sax.SAXParseException; lineNumber: 4; columnNumber: 104; 对实体 "commands" 的引用必须以 ';' 分隔符结尾。]
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(Unknown Source)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(Unknown Source)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
	at com.mlycan.dbus.common.utils.file.JAXBContextUtils.fileToBean(JAXBContextUtils.java:80)
	at com.mlycan.dbus.worker.runner.TasksLoaderRunner.run(TasksLoaderRunner.java:47)
	at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:770)
	at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:760)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:318)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1213)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1202)
	at com.mlycan.dbus.worker.AppLauncher.main(AppLauncher.java:26)

异常XML文件示例:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<tasks appname="appname" appcode="appcode" appkey="sdsdsdsdsdsd" count="2">
    <task pcode="HTTP_MANAGER_PROCESSER"  curprocess="sdsds" remark="HTTP服务业务处理器" >
        <properties> {"url":"url?gender=female&age=12&name=sean","method":"POST"}></properties>
		<paramap>{"unicode":"unicode"}</paramap>
    </task>
</tasks>

正确的XML文件示例:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<tasks appname="appname" appcode="appcode" appkey="sdsdsdsdsdsd" count="2">
    <task pcode="HTTP_MANAGER_PROCESSER"  curprocess="sdsds" remark="HTTP服务业务处理器" >
        <properties><![CDATA[ {"url":"http://47.92.71.59:9999/api/repository/find.html?commands=UNICODE&commands=ACCOUNT&commands=NICKNAME","method":"POST"}]]></properties>
		<paramap>{"unicode":"unicode"}</paramap>
		<resultmap>返回值映射表</resultmap>
    </task>
</tasks>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值