JAVA为什么要返回JSON数据
第一:json是一种轻量级的数据交换格式,现在之所以要用json,一方面是为了服务器端发送到客户端的数据更少,加快传输和响应速度。另一方面浏览器解析json格式的数据相对XML更加容易。
第二:返回什么格式很大程度取决于前后端的约定,不一定是要返回json格式,现在还是有企业在接口入参和出参使用XML格式的。
第三:如果你解析过XML,你会发现其标签解析比较麻烦,json这种数据格式,对于Java开发来说,看起来很友好,感觉更像缩减版的类。
这里仅使用json和xml做对比,希望回答对你有所帮助。
其实不应该这么问的。
我们都是在服务传输数据时,基本都选择了json来传输。
摒弃了早些年使用的xml格式,为什么呢?
其实可以做个对比:
可读性方面,json语法简单,而xml是规范的标签形式,易于理解。
可扩展性方面,json要比xml有更强的可扩展性,json在js处理方面更加有优势。
编码难度方面,json可编码性要比xml更强,而xml支持dom、dom4j、sax等方式进行解析。
对于要求描述性强的可以去选择xml。
对于数据传输方面可以直接用json,json格式与语言无关,也更加易于阅读和编写。
同时,json也易于机器解析和生成,有效提升网络传输效率,服务端也可以做压缩传输,在与java对象转换上更加具备优势。
恰恰相反,不是Java要返回JSON格式数据,记得10多年前,Ajax返回的都是html片段为主,如果是数据要求,也是以XML居多。
JSON最早是前端需求导致,JSON数据其实就是JavaScript能解析的对象数据表示格式。这样的数据返回,前端直接能用或者JSON.parse一下就能使用,不再需要其他解析手段,比较简单。
当然,JSON数据摒弃了XML的标签,体积小很多,网络传输也更有优势。
servlet怎么返回一个json对象
response.setContentType("application/json"); response.setCharacterEncoding("UTF-8"); JSONObject json=new JSONObject();//json给值省略response.getWriter().println(json.toString());
IOS请求webservice,webservice是C#的,如何返回JSON
webservice这个好像不直接支持json的,一个比较好的替代方法是在C#端先把返回值序列化成json字符串在返回了, 但是这可能会限制程序的易用性和伸缩性,不过要是仅仅简单的返回数据的话,应该没有任何问题,这个可能需要你定义一些简单的协议
C#写了一个简单web服务器,处理get请求后返回json的求教
新建建Web服务页面(*.asmx)
函数如下:
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
js调用如下:
$.ajax({
type: "POST",
url: "/Webservice/test.asmx/HelloWorld",
data: "{'Product_ID':'" + ProductID + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
try {
//do something
} catch (e) {
}
},
error: function () {
return false;
}
});

