java中json怎么运用? 在 java web开发中怎么使用json
\u5728 java web\u5f00\u53d1\u4e2d\u600e\u4e48\u4f7f\u7528json\uff1f\u4e00\u3001JSON\u5efa\u6784\u6709\u4e24\u79cd\u7ed3\u6784\uff1a
json\u7b80\u5355\u8bf4\u5c31\u662fjavascript\u4e2d\u7684\u5bf9\u8c61\u548c\u6570\u7ec4\uff0c\u6240\u4ee5\u8fd9\u4e24\u79cd\u7ed3\u6784\u5c31\u662f\u5bf9\u8c61\u548c\u6570\u7ec42\u79cd\u7ed3\u6784\uff0c\u901a\u8fc7\u8fd9\u4e24\u79cd\u7ed3\u6784\u53ef\u4ee5\u8868\u793a\u5404\u79cd\u590d\u6742\u7684\u7ed3\u6784
1\u3001\u5bf9\u8c61\uff1a\u5bf9\u8c61\u5728js\u4e2d\u8868\u793a\u4e3a\u201c{}\u201d\u62ec\u8d77\u6765\u7684\u5185\u5bb9\uff0c\u6570\u636e\u7ed3\u6784\u4e3a {key\uff1avalue\uff0ckey\uff1avalue,...}\u7684\u952e\u503c\u5bf9\u7684\u7ed3\u6784\uff0c\u5728\u9762\u5411\u5bf9\u8c61\u7684\u8bed\u8a00\u4e2d\uff0ckey\u4e3a\u5bf9\u8c61\u7684\u5c5e\u6027\uff0cvalue\u4e3a\u5bf9\u5e94\u7684\u5c5e\u6027\u503c\uff0c\u6240\u4ee5\u5f88\u5bb9\u6613\u7406\u89e3\uff0c\u53d6\u503c\u65b9\u6cd5\u4e3a \u5bf9\u8c61.key \u83b7\u53d6\u5c5e\u6027\u503c\uff0c\u8fd9\u4e2a\u5c5e\u6027\u503c\u7684\u7c7b\u578b\u53ef\u4ee5\u662f \u6570\u5b57\u3001\u5b57\u7b26\u4e32\u3001\u6570\u7ec4\u3001\u5bf9\u8c61\u51e0\u79cd\u3002\u5728Java\u4e2d\u5c31\u662f\u4e00\u79cdMap\u7ed3\u6784\u3002
2\u3001\u6570\u7ec4\uff1a\u6570\u7ec4\u5728js\u4e2d\u662f\u4e2d\u62ec\u53f7\u201c[]\u201d\u6269\u8d77\u6765\u7684\u5185\u5bb9\uff0c\u6570\u636e\u7ed3\u6784\u4e3a ["java","javascript","vb",...]\uff0c\u53d6\u503c\u65b9\u5f0f\u548c\u6240\u6709\u8bed\u8a00\u4e2d\u4e00\u6837\uff0c\u4f7f\u7528\u7d22\u5f15\u83b7\u53d6\uff0c\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u53ef\u4ee5\u662f \u6570\u5b57\u3001\u5b57\u7b26\u4e32\u3001\u6570\u7ec4\u3001\u5bf9\u8c61\u51e0\u79cd\u3002\u5728Java\u4e2d\u662f\u4e00\u79cdlist\u7ed3\u6784\u3002
\u7ecf\u8fc7\u5bf9\u8c61\u3001\u6570\u7ec42\u79cd\u7ed3\u6784\u5c31\u53ef\u4ee5\u7ec4\u5408\u6210\u590d\u6742\u7684\u6570\u636e\u7ed3\u6784\u4e86\u3002
\u4e8c\u3001Json in Javascript
\u4f7f\u7528Json\u8bed\u6cd5\u521b\u5efa\u5bf9\u8c61
var people = {"name":"jack","sex":"mail"};
\u53ef\u4ee5\u901a\u8fc7\u8fd9\u79cd\u8bed\u6cd5\u521b\u5efajson\u5bf9\u8c61\uff0c\u7528\u201c{}\u201d\u62ec\u8d77\u6765\uff0c\u7528\u201c\uff0c\u201d\u9694\u5f00key\uff1avalue
\u4f7f\u7528Json\u8bed\u6cd5\u521b\u5efa\u6570\u7ec4
var arr =[value1,value2...];
\u4e00\u4e2a\u5305\u542b\u591a\u4e2apeople\u7684\u6570\u7ec4 peoples = [{"name":"jack","sex":"mail"},
"name":"lily","sex":"femail"};
Json\u6570\u7ec4\u53ef\u4ee5\u901a\u8fc7\u8fd9\u79cd\u8bed\u6cd5\u521b\u5efa\uff0c\u7528"[]"\u62ec\u8d77\u6765\uff0c\u6570\u7ec4\u5143\u7d20\u4e4b\u95f4\u7528\u201c\uff0c\u201d\u5206\u9694\u5f00\uff0c\u4e0b\u9762\u662f\u8fd9\u79cd\u8bed\u6cd5\u7684\u793a\u610f\u56fe\uff1a
\u5728\u4f7f\u7528Json\u683c\u5f0f\u5b57\u7b26\u4e32\u4e0e\u670d\u52a1\u5668\u4ea4\u4e92\u65f6\u5019\uff0c\u53ef\u4ee5\u5229\u7528Json\u6269\u5c55\u7684\u65b9\u6cd5\u5c06\u5b57\u7b26\u4e32\u8f6c\u6362\u6210\u4e00\u4e2aJavaScript\u5bf9\u8c61\uff0c\u6216\u8005\u5c06\u4e00\u4e2a\u5bf9\u8c61\u8f6c\u6362\u6210Json\u683c\u5f0f\u5b57\u7b26\u4e32\u3002\u4e0d\u8fc7\u5148\u8981\u767b\u5f55http://www.json.org\u4e0b\u8f7dJson2.js\u6587\u4ef6\u3002\u5f15\u5165\u8be5\u5305\u540e\uff0cjs\u5bf9\u8c61\u76f4\u63a5\u7528toJSONString()\u88c5\u6362\u4e3a\u5b57\u7b26\u4e32\u683c\u5f0f\uff0c\u5b57\u7b26\u4e32\u53ef\u4ee5\u7528parseJSON()\u8f6c\u6362\u6210js\u5bf9\u8c61\u3002
\u8bbf\u95ee\u6570\u636e
\u53ea\u9700\u7528\u70b9\u53f7\u8868\u793a\u6cd5\u6765\u8868\u793a\u6570\u7ec4\u5143\u7d20\u3002\u6240\u4ee5\uff0c\u8981\u60f3\u8bbf\u95ee \u4e0a\u9762peoples\u5217\u8868\u7684\u7b2c\u4e00\u4e2a\u6761\u76ee\u7684\u540d\u5b57\uff0c\u53ea\u9700\u5728 JavaScript \u4e2d\u4f7f\u7528\u4e0b\u9762\u8fd9\u6837\u7684\u4ee3\u7801\uff1a
peoples[0].name
\u5229\u7528\u8fd9\u6837\u7684\u8bed\u6cd5\uff0c\u53ef\u4ee5\u5904\u7406\u4efb\u4f55 JSON \u683c\u5f0f\u7684\u6570\u636e\uff0c\u800c\u4e0d\u9700\u8981\u4f7f\u7528\u4efb\u4f55\u989d\u5916\u7684 JavaScript \u5de5\u5177\u5305\u6216 API\u3002
\u4fee\u6539\u6570\u636e
\u6b63\u5982\u53ef\u4ee5\u7528\u70b9\u53f7\u548c\u65b9\u62ec\u53f7\u8bbf\u95ee\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u6309\u7167\u540c\u6837\u7684\u65b9\u5f0f\u8f7b\u677e\u5730\u4fee\u6539\u6570\u636e\uff1a
peoples[0].name = "Rachmaninov";
\u5728\u5c06\u5b57\u7b26\u4e32\u8f6c\u6362\u4e3a JavaScript \u5bf9\u8c61\u4e4b\u540e\uff0c\u5c31\u53ef\u4ee5\u50cf\u8fd9\u6837\u4fee\u6539\u53d8\u91cf\u4e2d\u7684\u6570\u636e\u3002
JSON\u5efa\u6784\u6709\u4e24\u79cd\u7ed3\u6784\uff1a\u3000\u3000
json\u7b80\u5355\u8bf4\u5c31\u662fjavascript\u4e2d\u7684\u5bf9\u8c61\u548c\u6570\u7ec4\uff0c\u6240\u4ee5\u8fd9\u4e24\u79cd\u7ed3\u6784\u5c31\u662f\u5bf9\u8c61\u548c\u6570\u7ec42\u79cd\u7ed3\u6784\uff0c\u901a\u8fc7\u8fd9\u4e24\u79cd\u7ed3\u6784\u53ef\u4ee5\u8868\u793a\u5404\u79cd\u590d\u6742\u7684\u7ed3\u6784
\u3000\u30001\u3001\u5bf9\u8c61\uff1a\u5bf9\u8c61\u5728js\u4e2d\u8868\u793a\u4e3a\u201c{}\u201d\u62ec\u8d77\u6765\u7684\u5185\u5bb9\uff0c\u6570\u636e\u7ed3\u6784\u4e3a {key\uff1avalue\uff0ckey\uff1avalue,...}\u7684\u952e\u503c\u5bf9\u7684\u7ed3\u6784\uff0c\u5728\u9762\u5411\u5bf9\u8c61\u7684\u8bed\u8a00\u4e2d\uff0ckey\u4e3a\u5bf9\u8c61\u7684\u5c5e\u6027\uff0cvalue\u4e3a\u5bf9\u5e94\u7684\u5c5e\u6027\u503c\uff0c\u6240\u4ee5\u5f88\u5bb9\u6613\u7406\u89e3\uff0c\u53d6\u503c\u65b9\u6cd5\u4e3a \u5bf9\u8c61.key \u83b7\u53d6\u5c5e\u6027\u503c\uff0c\u8fd9\u4e2a\u5c5e\u6027\u503c\u7684\u7c7b\u578b\u53ef\u4ee5\u662f \u6570\u5b57\u3001\u5b57\u7b26\u4e32\u3001\u6570\u7ec4\u3001\u5bf9\u8c61\u51e0\u79cd\u3002\u5728Java\u4e2d\u5c31\u662f\u4e00\u79cdMap\u7ed3\u6784\u3002
\u3000\u30002\u3001\u6570\u7ec4\uff1a\u6570\u7ec4\u5728js\u4e2d\u662f\u4e2d\u62ec\u53f7\u201c[]\u201d\u6269\u8d77\u6765\u7684\u5185\u5bb9\uff0c\u6570\u636e\u7ed3\u6784\u4e3a ["java","javascript","vb",...]\uff0c\u53d6\u503c\u65b9\u5f0f\u548c\u6240\u6709\u8bed\u8a00\u4e2d\u4e00\u6837\uff0c\u4f7f\u7528\u7d22\u5f15\u83b7\u53d6\uff0c\u5b57\u6bb5\u503c\u7684\u7c7b\u578b\u53ef\u4ee5\u662f \u6570\u5b57\u3001\u5b57\u7b26\u4e32\u3001\u6570\u7ec4\u3001\u5bf9\u8c61\u51e0\u79cd\u3002\u5728Java\u4e2d\u662f\u4e00\u79cdlist\u7ed3\u6784\u3002
\u3000\u3000\u7ecf\u8fc7\u5bf9\u8c61\u3001\u6570\u7ec42\u79cd\u7ed3\u6784\u5c31\u53ef\u4ee5\u7ec4\u5408\u6210\u590d\u6742\u7684\u6570\u636e\u7ed3\u6784\u4e86\u3002
\u4e8c\u3001Json in Javascript
\u4f7f\u7528Json\u8bed\u6cd5\u521b\u5efa\u5bf9\u8c61
var people = {"name":"jack","sex":"mail"};
\u53ef\u4ee5\u901a\u8fc7\u8fd9\u79cd\u8bed\u6cd5\u521b\u5efajson\u5bf9\u8c61\uff0c\u7528\u201c{}\u201d\u62ec\u8d77\u6765\uff0c\u7528\u201c\uff0c\u201d\u9694\u5f00key\uff1avalue
\u4f7f\u7528Json\u8bed\u6cd5\u521b\u5efa\u6570\u7ec4
var arr =[value1,value2...];
\u4e00\u4e2a\u5305\u542b\u591a\u4e2apeople\u7684\u6570\u7ec4 peoples = [{"name":"jack","sex":"mail"},{"name":"lily","sex":"femail"};
Json\u6570\u7ec4\u53ef\u4ee5\u901a\u8fc7\u8fd9\u79cd\u8bed\u6cd5\u521b\u5efa\uff0c\u7528"[]"\u62ec\u8d77\u6765\uff0c\u6570\u7ec4\u5143\u7d20\u4e4b\u95f4\u7528\u201c\uff0c\u201d\u5206\u9694\u5f00\uff0c\u4e0b\u9762\u662f\u8fd9\u79cd\u8bed\u6cd5\u7684\u793a\u610f\u56fe\uff1a
\u5728\u4f7f\u7528Json\u683c\u5f0f\u5b57\u7b26\u4e32\u4e0e\u670d\u52a1\u5668\u4ea4\u4e92\u65f6\u5019\uff0c\u53ef\u4ee5\u5229\u7528Json\u6269\u5c55\u7684\u65b9\u6cd5\u5c06\u5b57\u7b26\u4e32\u8f6c\u6362\u6210\u4e00\u4e2aJavaScript\u5bf9\u8c61\uff0c\u6216\u8005\u5c06\u4e00\u4e2a\u5bf9\u8c61\u8f6c\u6362\u6210Json\u683c\u5f0f\u5b57\u7b26\u4e32\u3002\u4e0d\u8fc7\u5148\u8981\u767b\u5f55http://www.json.org\u4e0b\u8f7dJson2.js\u6587\u4ef6\u3002\u5f15\u5165\u8be5\u5305\u540e\uff0cjs\u5bf9\u8c61\u76f4\u63a5\u7528toJSONString()\u88c5\u6362\u4e3a\u5b57\u7b26\u4e32\u683c\u5f0f\uff0c\u5b57\u7b26\u4e32\u53ef\u4ee5\u7528parseJSON()\u8f6c\u6362\u6210js\u5bf9\u8c61\u3002
\u8bbf\u95ee\u6570\u636e
\u53ea\u9700\u7528\u70b9\u53f7\u8868\u793a\u6cd5\u6765\u8868\u793a\u6570\u7ec4\u5143\u7d20\u3002\u6240\u4ee5\uff0c\u8981\u60f3\u8bbf\u95ee \u4e0a\u9762peoples\u5217\u8868\u7684\u7b2c\u4e00\u4e2a\u6761\u76ee\u7684\u540d\u5b57\uff0c\u53ea\u9700\u5728 JavaScript \u4e2d\u4f7f\u7528\u4e0b\u9762\u8fd9\u6837\u7684\u4ee3\u7801\uff1a
peoples[0].name
\u5229\u7528\u8fd9\u6837\u7684\u8bed\u6cd5\uff0c\u53ef\u4ee5\u5904\u7406\u4efb\u4f55 JSON \u683c\u5f0f\u7684\u6570\u636e\uff0c\u800c\u4e0d\u9700\u8981\u4f7f\u7528\u4efb\u4f55\u989d\u5916\u7684 JavaScript \u5de5\u5177\u5305\u6216 API\u3002
\u4fee\u6539\u6570\u636e
\u6b63\u5982\u53ef\u4ee5\u7528\u70b9\u53f7\u548c\u65b9\u62ec\u53f7\u8bbf\u95ee\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u6309\u7167\u540c\u6837\u7684\u65b9\u5f0f\u8f7b\u677e\u5730\u4fee\u6539\u6570\u636e\uff1a\u3000\u3000
peoples[0].name = "Rachmaninov"; \u3000\u3000
\u5728\u5c06\u5b57\u7b26\u4e32\u8f6c\u6362\u4e3a JavaScript \u5bf9\u8c61\u4e4b\u540e\uff0c\u5c31\u53ef\u4ee5\u50cf\u8fd9\u6837\u4fee\u6539\u53d8\u91cf\u4e2d\u7684\u6570\u636e\u3002
js部分
//获取卡的金额
function get_money(){
var str=document.getElementById("pk_card_type").value;
//alert(str);
var url = '/member_h.do';
var pars = 'method=getMoney';
pars+='&pk_card_type='+str;
var ajax = new Ajax.Request(
url,
{method:'post',parameters:pars,onComplete:show_money}
);
}
//回调函数 写入卡的金额
function show_money(dataResponse)
{
var data = eval('(' + dataResponse.responseText + ')');
var price=0;
price=data.price;
var collection_fees=0;
collection_fees=data.collection_fees;
document.getElementById("recharge").value=price;
document.getElementById("collection_fees").value=collection_fees;
}
action部分
public ActionForward getMoney(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
response.setContentType("text/html; charset=utf-8");
try {
IElementaryFileService ggsv = new ElementaryFileService();
String pk_card_type = request.getParameter("pk_card_type");
Card_TypeVO ctvo=new Card_TypeVO();
ctvo=ggsv.queryByPK(Card_TypeVO.class, pk_card_type);
PrintWriter out = response.getWriter();
// 这里的数据拼装一般是从数据库查询来的
JSONObject jsonObject = new JSONObject();
if(ctvo!=null){
jsonObject.put("price", ctvo.getCard_money());
jsonObject.put("collection_fees", ctvo.getCash());
}else{
jsonObject.put("price", 0);
jsonObject.put("collection_fees", 0);
}
out.print(jsonObject.toString());
out.flush();
out.close();
return null;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
JSONObject jsonObject=new JSONObject(String)
String str=jsonObjiect.get("你需要的字符串名字").toString;
考虑到JSON职责是用于传输交换数据。实际开发中常发生在HTML与JavaScript发生数据耦合以及前台页与服务器代码发生数据耦合时,使用JSON比较恰当。
一 简介:
JSON(JavaScript对象符号)是一种轻量级的数据交换格式。这是很容易为人类所读取和写入。这是易于机器解析和生成。它是基于JavaScript编程语言的一个子集 , 标准ECMA-262第三版- 1999年12月。JSON是一个完全独立于语言的文本格式,但使用C家族的语言,包括C,C + +,C#,Java中的JavaScript,Perl的,Python中,和许多其他程序员所熟悉的约定。这些特性使JSON成为理想的数据交换语言。他和map很类似,都是以
键/值 对存放的。
二 JSON 使用须要用的JAR包:
commons-lang.jar
commons-beanutils.jar
commons-collections.jar
commons-logging.jar
ezmorph.jar
json-lib-2.2.2-jdk15.jar
三 使用JSON中的JSONObject:
1.创建一个JSONObject对象,并使用put();方法添加元素:
首先我们创建一个User对象以备后用:
public class User {
private int id;
private String name;
private String pwd;
private String sex;
//get,set方法
@Override
//重写他的toString方法
public String toString() {
return this.name+"--"+this.pwd+"--"+this.sex;
}
}
例子如下:
import net.sf.json.JSONObject;
public class TestJson {
private static JSONObject json = null;
public static void main(String[] args) {
json = new JSONObject();
json.put("id","1");
json.put("name","张三");
json.put("pwd","123456");
System.out.println(json);
}
}
运行:
C:\java>java TestJson
{"id":"1","name":"张三","pwd":"123456"}
通过这段代码我们就能很清淅的看到他的添加元素和map集合方式一样。
现在我们要将这个json对象放进一个JAVABEAN的User对象怎么弄呢?很简单
我们须要在 TestJson 类中的主方法中加入(放在System.out.println(json)这句话后面)
User user = new User();
user.setId(Integer.parseInt(json.getString("id")));
//json.getString("id")就是通过他的KEY值取得对应的value值
user.setName(json.getString("name"));
user.setPwd(json.getString("pwd"));
System.out.println(user);
这样我们就把json这个对象里的值放进user对象里面了。
运行:
C:\java>java TestJson
{"id":"1","name":"张三","pwd":"123456"}
张三--123456--null
json添加元素除了用put();方法之外还可以用element();如:json.element("11", "222");
2.创建一个JSONArray对象,并添加元素:
JSONArray添加元素和list集合一样,当然取值也很像,代码如下
import net.sf.json.*;
public class TestJson1 {
private static JSONObject json = null;
private static JSONArray jsonArray = null;
public static void main(String[] args) {
jsonArray = new JSONArray ();
jsonArray.add(0, "张三");
jsonArray.add(1, "李四");
jsonArray.add(2, "王五");
jsonArray.add(3, "小三");
System.out.println(jsonArray);
System.out.println(jsonArray.get(1));
}
}
输出结果为:
["张三","李四","王五","小三"]
李四
注:json的基本格式这些网上很多,就不多说了,我们只须记住一句话就行了:[]表示数组,{}表示对象就完了!
1.从Object到String
要先用Object对象构造一个JSONObject或者JSONArray对象,然后调用它的toString()方法即可
(1)示例一
Book book=new Book();
book.setName("Java");
book.setPrice(52.3f);
JSONObject object=JSONObject.fromObject(book);
System.out.println(object.toString());
(2)示例二
Book book=new Book();
book.setName("Java");
book.setPrice(52.3f);
Book book2=new Book();
book2.setName("C");
book2.setPrice(42.3f);
List list=new ArrayList();
list.add(book);
list.add(book2);
JSONArray arry=JSONArray.fromObject(list);
System.out.println(arry.toString());
//结果如下:
[{"name":"Java","price":52.3},{"name":"C","price":42.3}]
2.从String到Object
要先用String对象构造一个JSONObject或者JSONArray对象
(1)示例一
String json="{name:'Java',price:52.3}";
JSONObject object=JSONObject.fromObject(json);
System.out.println(object.get("name")+" "+object.get("price"));
(2)示例二
String json="[{name:'Java',price:52.3},{name:'C',price:42.3}]";
JSONArray array=JSONArray.fromObject(json);
for(int i=0;i< array.size();i++){
Map o=(Map)array.get(i);
System.out.println(o.get("name")+" "+o.get("price"));
}
3.从String到Bean
(1)单个Bean对象
String json="{name:'Java',price:52.3}";
JSONObject object=JSONObject.fromObject(json);
Product product=(Product)JSONObject.toBean(object,Product.class);
System.out.println(product.getName()+" "+product.getPrice());
(2).Bean的数组
String json="[{name:'Java',price:52.3},{name:'C',price:42.3}]";
JSONArray array=JSONArray.fromObject(json);
Product[] products=(Product[]) JSONArray.toArray(array,Product.class);
for(Product p:products){
System.out.println(p.getName()+" "+p.getPrice());
}
自定义封装JSON操作的类
package com.util;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class JsonHelper {
//从普通的Bean转换为字符串
public static String getJson(Object o){
JSONObject jo=JSONObject.fromObject(o);
return jo.toString();
}
//从Java的列表转换为字符串
public static String getJson(List list){
JSONArray ja=JSONArray.fromObject(list);
return ja.toString();
}
//从Java对象数组转换为字符串
public static String getJson(Object[] arry){
JSONArray ja=JSONArray.fromObject(arry);
return ja.toString();
}
//从json格式的字符串转换为Map对象
public static Map getObject(String s){
return JSONObject.fromObject(s);
}
//从json格式的字符串转换为List数组
public static List getArray(String s){
return JSONArray.fromObject(s);
}
//从json格式的字符串转换为某个Bean
public static Object getObject(String s,Class cls){
JSONObject jo=JSONObject.fromObject(s);
return JSONObject.toBean(jo, cls);
}
//从json格式的字符串转换为某类对象的数组
public static Object getArray(String s,Class cls){
JSONArray ja=JSONArray.fromObject(s);
return JSONArray.toArray(ja, cls);
}
}
绛旓細杩欐剰鍛崇潃瑕佸湪浣犵殑椤圭洰涓娇鐢↗SONObject锛屼綘闇瑕佸鍏ヨ繖涓寘銆備娇鐢↗SONObject鐨勯噸瑕佹э細 org.json鍖呮彁渚涗簡澶勭悊JSON鏁版嵁鐨楂樻晥鏂瑰紡銆侸SONObject绫讳娇寰楄В鏋愬拰鐢熸垚JSON瀵硅薄鍙樺緱绠鍗曪紝杩欏浜庡鐞咥PI鍝嶅簲銆侀厤缃暟鎹瓑闈炲父鏈夌敤銆傜敱浜庡畠鐨勫箍娉涗娇鐢紝寰堝寮鍙戣呴兘鐔熸倝杩欎釜搴擄紝浣垮緱鍦Java椤圭洰涓鐞咼SON鏁版嵁鍙樺緱闈炲父渚挎嵎銆
绛旓細棣栧厛鎴戜滑鏉ヤ簡瑙d竴涓婮SON鏄粈涔堬紵鏈変粈涔鐢紵JSON锛屽叏绉版槸 JavaScript Object Notation锛屽嵆 JavaScript 瀵硅薄鏍囪娉曘傚畠鏄竴绉嶅熀浜庢枃鏈紙Text-Based锛鐨杞婚噺绾э紙Light-Weight锛夊紑鏀炬爣鍑嗭紝涓撲负浜虹被鍙鐨勶紙Human-Readable锛夋暟鎹氦鎹㈣岃璁°傜▼搴忓憳宸茬粡鐭ラ亾JSON浣跨敤鐨勭害瀹氾紝鍖呮嫭C锛孋 ++锛Java锛孭ython锛孭erl绛夈傛荤粨...
绛旓細杩欎釜瑕佺敤鍒json鐨jar鍖 json-lib-2.x 锛岀劧鍚鐢↗SONArray瀵硅薄灏佽list 锛屾渶鍚庢妸jsonarray鏀惧叆jsonobject涓皝瑁呮垚json瀵硅薄銆傚綋鐒朵簡 濡傛灉浣犵敤妗嗘灦鐨勮瘽 浜哄鏈夊皝瑁卝son瀵硅薄鐨勬満鍒躲傚師鐢熸乻ervlet灏辫嚜宸鐢╦son鍖呭皝瑁呭憲 缁欐渚嬪瓙缁欎綘鍒氬啓鐨 :
绛旓細鐩稿浜java浠ュ強鍏跺畠json鐨勮В鏋愭鏋,Gson闈炲父鐨勫ソ鐢.绠鍗曟潵璁插氨鏄牴鎹甹son鐨勬暟鎹粨鏋勫畾涔夊嚭鐩稿簲鐨刯avabean --->"new"鍑篏son鐨勫疄渚媑son--->gson.fromJson(jsonString,JavaBean.class) 鍗冲彲.涓嬮潰缁欏嚭涓涓疄渚嬫潵璇存槑.姝ラ1:鐩爣:灏嗕粠webservice浼犲洖鐨刯son { "status": 0, "result": { "loc...
绛旓細娌℃噦浣犺闂粈涔堬紝鏄棶JSON鐨勬牸寮忎箞锛熸垜灏辩畝鍗曞湴浠嬬粛涓媕son鏍煎紡锛氭寜鐓ф渶绠鍗曠殑褰㈠紡锛屽彲浠鐢涓嬮潰杩欐牱鐨 JSON 琛ㄧず"鍚嶇О / 鍊煎"锛歿 "firstName": "Tom" } 杩欎釜绀轰緥闈炲父鍩烘湰锛岃屼笖瀹為檯涓婃瘮绛夋晥鐨勭函鏂囨湰"鍚嶇О / 鍊煎"鍗犵敤鏇村鐨勭┖闂达細firstName=Tom 浣嗘槸锛屽綋灏嗗涓"鍚嶇О / 鍊煎"涓插湪涓璧锋椂锛...
绛旓細param str return / public static Object[] getJsonToArray(String str) { JSONArray jsonArray = JSONArray.fromObject(str);return jsonArray.toArray(); } 3.浠巎son鏁扮粍涓緱鍒java鏁扮粍锛屽彲浠ュ璇ユ暟缁勮繘琛岃浆鍖栵紝濡傚皢JSONArray杞寲涓篠tring鍨嬨丩ong鍨嬨丏ouble鍨嬨両nteger鍨嬨丏ate鍨嬬瓑绛夈4.鍒嗗埆...
绛旓細鍏堟妸jar鍖呮斁鍦ㄩ」鐩笅闈紝鏈濂芥槸鏂板缓涓涓笓闂ㄦ斁鍖鐨鏂囦欢澶 鍙抽敭椤圭洰锛屽睘鎬э紝java build path锛屾坊鍔犲寘
绛旓細JSON,鏁扮粍锛岄泦鍚堬紝浣犲彲浠ユ妸瀹冧滑褰撳仛瀵硅薄锛JSON閲岄潰鍙互鍖呭惈鏁扮粍锛岄泦鍚堬紝闆嗗悎閲岄潰涔熷彲浠ュ寘鍚暟缁勶紝JSON 涓缁存暟缁勮窡闆嗗悎娌′粈涔堝尯鍒紝鏁扮粍鍙槸浜岀淮锛屼笁缁
绛旓細2 灏嗘垜浠垰鍒氬垱寤鐨刯son瀛楃涓叉墦鍗板嚭鏉ュ涓嬫墍绀猴紝鍙互鐪嬪嚭杩欎釜json鍖呭惈浜嗕竴涓ぇjson瀵硅薄锛屽ぇjson瀵硅薄閲岄潰鍙堝寘鍚竴涓猨son鏁扮粍锛屼竴涓暟缁勯噷闈㈠張鍖呭惈涓変釜json瀵硅薄锛屽涓嬪浘锛3 鍦java涓鎴戜滑瑕佽В鏋恓son鏁扮粍蹇呴』鍊熷姪绗笁鏂瑰寘锛屾墍浠ヨ繖閲屾垜浠姞杞戒竴涓嬬涓夋柟鍖咃紝棣栧厛鎴戜滑灏嗛紶鏍囩Щ鍔ㄥ埌椤圭洰鍚嶇О涓婇潰鍘伙紝鐒跺悗鍙抽敭鍙敜鍑...
绛旓細java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 浣跨敤鐨勮瘽 JSON Editor Plugin 鏄 Eclipse 涓嬬敤鏉ョ紪杈 JSON 鏍煎紡鏁版嵁鐨...