XML:易扩展,有冗余。
用< >表示。如下图所示:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="zhuxuekui.data.UserMapper">
<resultMap id="userResultMap" type="User">
<result property="name" column="username"></result>
<result property="email" column="email"></result>
</resultMap>
<select id="selectUser" parameterType="String"
resultMap="userResultMap">
select
*
from user where username = #{username}
</select>
</mapper>
JSON:不易扩展,但冗余少,轻量级开发。
参考资料:http://www.cnblogs.com/mydomain/archive/2010/12/02/1895018.html JSON基础知识总结
http://www.cnblogs.com/mydomain/archive/2010/12/02/1895030.html
对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。[7]
数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。字符串(string)与C或者Java的字符串非常相似。
JSON串虽然称作串,但它的全程叫做JavaScript Object Notation—JavaScript对象表示法,这个字符串是作为js中的对象来解析的,它是语法级别的。要求行内封闭。
{ }里面是一个对象,里面有很多的属性。[ ]表示数组,可以有两个对象,那就在写一个。
{ }里面也可以有[ ],表示很多个对象。
我们可以认为http是网络协议,而JSON是一种数据协议,它是做数据传输用的。
下图上面是xml,下面是json:
string, number, object, array, true, false, null
JSON
{"menu": {
"id": "file",
"value": "File:",
"popup": {
"menuitem": [
{"value": "New", "onclick": "CreateNewDoc()"},
{"value": "Open", "onclick": "OpenDoc()"},
{"value": "Close", "onclick": "CloseDoc()"}
]
}
}
}
XML
<menu id="file" value="File" >
<popup>
<menuitem value="New" onclick="CreateNewDoc()" />
<menuitem value="Open" onclick="OpenDoc()" />
<menuitem value="Close" onclick="CloseDoc()" />
</popup>
</menu>