在本文中,您将会了解到关于JavaWeb项目中Spring框架处理JSON格式数据的方法的新资讯,同时我们还将为您解释springmvc如何处理json数据的相关在本文中,我们将带你探索JavaWeb
在本文中,您将会了解到关于Java Web项目中Spring框架处理JSON格式数据的方法的新资讯,同时我们还将为您解释springmvc如何处理json数据的相关在本文中,我们将带你探索Java Web项目中Spring框架处理JSON格式数据的方法的奥秘,分析springmvc如何处理json数据的特点,并给出一些关于Ajax调用restful接口传送Json格式数据的方法、Android编程解析Json格式数据的方法、C#实现集合转换成json格式数据的方法、django通过ajax发起请求返回JSON格式数据的方法的实用技巧。
本文目录一览:- Java Web项目中Spring框架处理JSON格式数据的方法(springmvc如何处理json数据)
- Ajax调用restful接口传送Json格式数据的方法
- Android编程解析Json格式数据的方法
- C#实现集合转换成json格式数据的方法
- django通过ajax发起请求返回JSON格式数据的方法
Java Web项目中Spring框架处理JSON格式数据的方法(springmvc如何处理json数据)
json是一种常见的传递格式,是一种键值对应的格式。并且数据大小会比较小,方便传递。所以在开发中经常会用到json。
首先看一下json的格式:
{key1:value1,key2:value2}
每一个建对应一个值,每个键值对之间用逗号连接。并且最后一个键值对之后没有逗号,整体需要有大括号括起来。
一般正常的servlet返回json时,会像下面这样:
response.setContentType("text/JSON;charset=utf-8"); response.getWriter().print(gson.toJson(page)); response.getWriter().flush(); response.getWriter().close(); return null;
这样相对来说比较麻烦,也不好封装。新版spring返回json时,可以通过@ResponseBody直接返回,这点做得很不错,大概代码如下:
@Controller @RequestMapping("/json") public class JsonController { @RequestMapping(value="{provinceId}",method = RequestMethod.GET) @ResponseBody public String pagination(@PathVariable String provinceId){ return getJsonData(provinceId); } }
访问方式如下:http://localhost:8080/spring3/action/json/1,有一点需要注意下,那就是访问spring mvc的controller时中间加了个/action,那是因为dispatcherServlet的映射路径如果直接使用/*的话,会将相应的jsp屏蔽掉,所以一定得加个前缀以区别jsp与controller.
上面的json中如果有中文的话,会出现乱码,所以则修改spring-servlet.xml配置文件,修改下AnnotationMethodHandlerAdapter的messageConverters即可,因为其默认采用的iso8895-1的编码,代码如下:
<bean> <property name="webBindingInitializer"> <bean/> </property> <property name="messageConverters"> <list> <bean> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> </list> </property> </bean> </list> </property> </bean>
经过这些步骤后,对json的处理就相当方便了。
Ajax调用restful接口传送Json格式数据的方法
ajax传送json格式数据,关键是指定contentType,data要是json格式
如果是restful接口,把type改成对应的post(增)、delete(删)、put(改)、get(查)即可
var post_data={"name":"test001","pass":"xxxx"}; $.ajax({ url: "http://192.168.10.111:8080/uc/login",type: 'post',contentType: "application/json; charset=utf-8",data:JSON.stringify(post_data),success:function (data) { //调用成功 },error: function(data,textStatus,errorThrown){ //调用失败 } });
以上所述是小编给大家介绍的Ajax调用restful接口传送Json格式数据的方法的全部叙述,希望对大家有所帮助,如果大家想了解更多内容敬请关注编程小技巧网站!
Android编程解析Json格式数据的方法
本文实例讲述了Android编程解析Json格式数据的方法。分享给大家供大家参考,具体如下:
package com.practice.json; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import android.app.Activity; import android.os.Bundle; import android.util.Log; public class JsonDemo extends Activity { /* * 解析JSON的例子,str保存的是JSON代码,解析后的数据在LogCat里输出 */ String TAG = "Json message"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); detectJSON(); } private void detectJSON() { String str = "{"+ "\"日期\" : \"2011-06-06\","+ //Like 是 JSONObject "\"Like\" : {"+ "\"Name\" : \"加内特\","+ "\"Height\" : \"2.11cm\","+ "\"Age\" : 35"+ "},"+ //LikeList 就是一个 JSONObject "\"LikeList\":" + "{\"List\": " + "["+ //这里也是JSONObject "{"+ "\"Name\" : \"Rose\","+ "\"Height\" : \"190cm\","+ "\"Age\" : 23"+ "},"+ //这里也是JSONObject "{"+ "\"Name\" : \"科比\","+ "\"Height\" : \"198cm\","+ "\"Age\" : 33"+ "}"+ "]"+ "}"+ "}"; try { JSONObject dataJson = new JSONObject(str); Log.d(TAG,dataJson.getString("日期")); JSONObject nbaJson = dataJson.getJSONObject("Like"); Log.d(TAG,nbaJson.getString("Name")); Log.d(TAG,nbaJson.getString("Height")); Log.d(TAG,nbaJson.get("Age").toString()); JSONObject listJson = dataJson.getJSONObject("LikeList"); JSONArray arrayJson = listJson.getJSONArray("List"); for(int i=0;i<arrayJson.length();i++) { JSONObject tempJson = arrayJson.optJSONObject(i); Log.d(TAG,tempJson.getString("Name")); Log.d(TAG,tempJson.getString("Height")); Log.d(TAG,tempJson.getString("Age").toString()); } } catch (JSONException e) { System.out.println("Something wrong..."); e.printstacktrace(); } } }
希望本文所述对大家Android程序设计有所帮助。
C#实现集合转换成json格式数据的方法
本文实例讲述了C#实现集合转换成json格式数据的方法。分享给大家供大家参考,具体如下:
/// <summary> /// dataTable转换成Json格式 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static string ToJson(DataTable dt) { if (dt != null && dt.Rows.Count > 0) { StringBuilder jsonBuilder = new StringBuilder(); jsonBuilder.Append("{\""); jsonBuilder.Append("data"); jsonBuilder.Append("\":["); for (int i = 0; i < dt.Rows.Count; i++) { jsonBuilder.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { jsonBuilder.Append("\""); jsonBuilder.Append(dt.Columns[j].ColumnName); jsonBuilder.Append("\":\""); jsonBuilder.Append(jsonStringFromat(dt.Rows[i][j].ToString())); jsonBuilder.Append("\","); } jsonBuilder.Remove(jsonBuilder.Length - 1,1); jsonBuilder.Append("},"); } jsonBuilder.Remove(jsonBuilder.Length - 1,1); jsonBuilder.Append("]"); jsonBuilder.Append("}"); return jsonBuilder.ToString(); } else { return ""; } } /// <summary> /// Enumerable转成JSON /// </summary> /// <param name="list"></param> /// <returns></returns> public static string EnumerabletoJson(IEnumerable list) { StringBuilder json = new StringBuilder(); int i = 0; if (list != null) { json.Append("{\"data\":["); foreach (var item in list) { json.Append("{"); PropertyInfo[] pi = item.GetType().GetProperties(); int j = 0; foreach (var p in pi) { if (j < pi.Length - 1) { json.Append("\"" + p.Name.ToString() + "\":\"" + jsonStringFromat(p.GetValue(item,null).ToString()) + "\","); } else { json.Append("\"" + p.Name.ToString() + "\":\"" + jsonStringFromat(p.GetValue(item,null).ToString()) + "\""); } j++; } i++; json.Append("},"); } json.Remove(json.Length - 1,1); json.Append("]}"); } if (i != 0) return json.ToString(); else return ""; }
PS:本站还提供了如下JSON相关工具,方便大家参考使用:
JSON在线转换成C#实体类工具:
http://tools.jb51.net/code/json2csharp
在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat
在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson
json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat
C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#窗体操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#程序设计之线程使用技巧总结》、《C#操作Excel技巧总结》、《C#中XML文件操作技巧汇总》、《C#数据结构与算法教程》、《C#数组操作技巧总结》及《C#面向对象程序设计入门教程》
希望本文所述对大家C#程序设计有所帮助。
django通过ajax发起请求返回JSON格式数据的方法
本文实例讲述了django通过ajax发起请求返回json格式数据的方法。分享给大家供大家参考。具体实现方法如下:
这是后台处理的:
def checkemail(request): user = None if request.POST.has_key(''email''): useremail = request.POST[''email''] result = {} user = User.objects.filter(useremail__iexact = useremail) if user: result = "1" result = simplejson.dumps(result) else: result = "0" result = simplejson.dumps(result) return HttpResponse(result, mimetype=''application/javascript'')
这是AJAX部分:
if(valid_email($(''#reg-for-email'').val())){ var email = $(''#reg-for-email'').val(); //这里把用户输入的EMAIL地址提交到后台数据库中去验证是否已存在。 $.ajax({ type:"POST" , url:"/reg/checkemail", data:"email=" + email , cache: false, success: function(result){ if (result==1) { $("#reg-for-email-msg").removeClass("g-hide"); $(''#reg-for-email-msg'').removeClass("msg-isok").addClass("msg-error").html("该邮箱已存在!"); eok = true; } else { $("#reg-for-email-msg").addClass("g-hide"); eok = false; } } }) }
URL的配置是:
希望本文所述对大家的Python程序设计有所帮助。
我们今天的关于Java Web项目中Spring框架处理JSON格式数据的方法和springmvc如何处理json数据的分享已经告一段落,感谢您的关注,如果您想了解更多关于Ajax调用restful接口传送Json格式数据的方法、Android编程解析Json格式数据的方法、C#实现集合转换成json格式数据的方法、django通过ajax发起请求返回JSON格式数据的方法的相关信息,请在本站查询。
本文标签: