GVKun编程网logo

Java Web项目中Spring框架处理JSON格式数据的方法(springmvc如何处理json数据)

12

在本文中,您将会了解到关于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数据)

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调用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格式数据的方法

本文实例讲述了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格式数据的方法

本文实例讲述了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格式数据的方法

本文实例讲述了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的配置是:

复制代码 代码如下:url(r''^reg/checkemail/'', ''reg.views.checkemail'', name=''ce''),

希望本文所述对大家的Python程序设计有所帮助。

我们今天的关于Java Web项目中Spring框架处理JSON格式数据的方法springmvc如何处理json数据的分享已经告一段落,感谢您的关注,如果您想了解更多关于Ajax调用restful接口传送Json格式数据的方法、Android编程解析Json格式数据的方法、C#实现集合转换成json格式数据的方法、django通过ajax发起请求返回JSON格式数据的方法的相关信息,请在本站查询。

本文标签:

上一篇具有多维和多类型数组的Swift 4 JSON可解码(json多维数组 格式)

下一篇JSON的String字符串与Java的List列表对象的相互转换(json list string)