GVKun编程网logo

json格式数据(json格式数据示例)

9

本文将分享json格式数据的详细内容,并且还将对json格式数据示例进行详尽解释,此外,我们还将为大家带来关于102.json格式数据返回到页面并js解析、56Python-JSON格式数据处理、aj

本文将分享json格式数据的详细内容,并且还将对json格式数据示例进行详尽解释,此外,我们还将为大家带来关于102. json格式数据返回到页面 并js解析、56 Python - JSON格式数据处理、ajax发送json格式数据、Ajax将数据封装为JSON格式数据的相关知识,希望对你有所帮助。

本文目录一览:

json格式数据(json格式数据示例)

json格式数据(json格式数据示例)

当开发时需要使用到json数据的时候,比如ajax请求,想将数据转化为json传输;或者使用某个js插件,该插件需要绑定的数据格式为json格式等等。

       一般做法有两种,一个是在代码中,将获取的数据转化为json之后,存放到String类型的变量里,比如我从数据库查询数据存放到map中,然后JSONObject jo=JSONObject.fromObject(map); 将其转化,最后把该数据赋值给定义好的String变量,result=jo.toString();最后返回给页面。第二个,就是直接拿到数据,比如我们查询的数据存放在map中,我们用JSONObject jo=JSONObject.fromObject(map);将其转化为json对象,然后直接返回JSONObject的对象,最后返回给页面。

         当页面从后台取到的数据是String类型的数据时候,但我们的程序或者js插件需要json格式,这时我们需要将result=jo.toString();的result转化为json,var json= eval("("+result+")");

          当从后台去到的数据是JSONObject时,那么我们无需转化,直接将其赋值给我们的程序或者js插件的绑定数据处即可。

102. json格式数据返回到页面 并js解析

102. json格式数据返回到页面 并js解析

1. 效果

2.前端  ajax请求

//10. 后台返回 更   复杂的 json格式数据  前段解析  

//{"status": "101","msg": "操作成功","data": {"totalSize": "10","totalPage": "4","pageSize": "3","currentPage": "2","beanList": [{"name": "John","age": "25"}, {"name": "luck","age": "20"}]}}

$("#responmoreComplexJsonid").click(function(){

$.ajax({

url:''${pageContext.request.contextPath }/responMoreComplexJson.action'',

type:''post'',

success:function(data){

var obj = JSON.parse(data); //由JSON字符串转换为JSON对象

var needobj =  obj.data.beanList;

for(var i = 0; i < needobj.length; i++){

 alert(needobj[i].name + " " + needobj[i].age);

}

},''json'')

});

3. 后台    ajax请求 不能返回 只能以流的形式返回

@RequestMapping("/responMoreComplexJson.action")
    public  void   responMoreComplexJson(HttpServletResponse response ){
        try {
            StringBuffer sb =  new StringBuffer();
            sb.append("{");
            sb.append("\"status\"");
            sb.append(":");
            sb.append("\"101\"");
            sb.append(",");
            sb.append("\"msg\"");
            sb.append(":");
            sb.append("\"操作成功\"");
            sb.append(",");
            sb.append("\"data\"");
            sb.append(":");
            sb.append("{");
            sb.append("\"totalSize\":");
            sb.append("\"10\"");
            sb.append(",");
            sb.append("\"totalPage\":");
            sb.append("\"4\"");
            sb.append(",");
            sb.append("\"pageSize\": \"3\",\"currentPage\": \"2\",");
            sb.append("\"beanList\":");
            sb.append("[{\"name\": \"John\",\"age\": \"25\"}, {\"name\": \"luck\",\"age\": \"20\"}]");
            sb.append("}}");
            //输出流 对象
            PrintWriter out = response.getWriter();

            out.write(sb.toString());
        } catch (IOException e) {
            e.printStackTrace();
        }
        
    }

 

 

56 Python - JSON格式数据处理

56 Python - JSON格式数据处理

      Json也是多语言通用的数据交互格式

 

分享图片

创建一个json目录和一个文件

 

分享图片

字典表数据转换为json数据——dumps(s代表字符串非复数含义)

 

分享图片

分享图片

Json数据转换为字典表——loads(s代表字符串非复数含义)

 

分享图片

分享图片

 

把数据以json格式写入文件中——dump(注意没有s因为不是转为字符串)

 

分享图片

 

 

读取json文件——load

 

分享图片

分享图片

 

 

 

Python中的True False none转换为json中的true false null 差异是什么

Python的False转换为json的false(False变为false)

 

分享图片

 

Pyhon中的None转换为json后(None转换为null)

 

分享图片

 

Python 和json类型差异另一个例子

 

分享图片

ajax发送json格式数据

ajax发送json格式数据

前后端在做数据交互的时候 一定一定要表明你所发的的数据到底是什么格式

前段后交互 你不能骗人家,不然后端开发人员来找你的时候会抄着一根凳子腿。 你的数据时什么格式 你就应该准确无误告诉别人是什么格式

那么怎么告诉后端你要发送的数据的格式是什么呢

form 表单是通过 他的 enctype

而 ajax 是通过 contentType,如果你要传送的数据是json(通常只有json格式)

你需要这么写 contentType:''application/json''

要怎样发送一个json格式的数据呢? 后端有json.dumps 前端有JSON.stringify()。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
    <link href="https://cdn.bootcss.com/twitter-bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet">
    <script src="https://cdn.bootcss.com/twitter-bootstrap/3.3.1/js/bootstrap.min.js"></script>

</head>
<body>
<input type="text" id="t1"> + <input type="text" id="t2"> = <input type="text" id="t3">
<p>
    <button id="b1">计算</button>
</p>
<script>
    $(''#b1'').on(''click'',function () {
        $.ajax({
            url:'''',
            type:''post'',
            contentType:''application/json'',
            {#data:{''t1'':$(''#t1'').val(),''t2'':$(''#t2'').val()},#}
            data:JSON.stringify({''username'':''chanyuli'',''password'':''123''}),
            success:function (data) {
                $(''#t3'').val(data)
                {#alert(data)#}
            }
        })
    })
</script>
</body>
</html>

这时候就会发现后端 post 里面没有任何信息了,这就是之前讲过的,django后端会对不同的数据格式进行不同的处理,这又不是 xxxxx&xxxxx类型的。所以没有在post里面。

**Ajax传json格式数据:**django后端针对json格式的数据 不会自动帮你解析 会直接原封不动的给你放到request.body中 你可以手动处理 获取数据。

这时候去后端 打request.body ,发现是一个b''{"username":"chanyuli","password":"123"}

是一个bytes类型的数据,这时候我们自己反序列化就好了。

注意点
1.指定contentType参数
  contentType:''application/json'',
2.要将你发送的数据 确保是json格式的
                data:JSON.stringify({''username'':''jason'',''password'':''123''})
        

注意:有些时候 request.body 会看不了,django会给你报错。

Ajax将数据封装为JSON格式数据

Ajax将数据封装为JSON格式数据

核心包

依赖包 一个不能少

工具类

/**
 * 处理json数据格式的工具类
 * 
 
 */
public class JSONUtil {
	/**
	 * 将数组转换成String类型的JSON数据格式
	 * 
	 * @param objects
	 * @return
	 */
	public static String array2json(Object[] objects){
		
		JSONArray jsonArray = JSONArray.fromObject(objects);
		return jsonArray.toString();
		
	}
	
	/**
	 * 将list集合转换成String类型的JSON数据格式
	 * 
	 * @param list
	 * @return
	 */
	public static String list2json(List list){
		
		JSONArray jsonArray = JSONArray.fromObject(list);
		return jsonArray.toString();
		
	}
	
	/**
	 * 将map集合转换成String类型的JSON数据格式
	 * 
	 * @param map
	 * @return
	 */
	public static String map2json(Map map){
		
		JSONObject jsonObject = JSONObject.fromObject(map);
		return jsonObject.toString();
		
	}
	
	/**
	 * 将Object对象转换成String类型的JSON数据格式
	 * 
	 * @param object
	 * @return
	 */
	public static String object2json(Object object){
		
		JSONObject jsonObject = JSONObject.fromObject(object);
		return jsonObject.toString();
		
	}
	
	/**
	 * 将XML数据格式转换成String类型的JSON数据格式
	 * 
	 * @param xml
	 * @return
	 */
	public static String xml2json(String xml){
		
		JSONArray jsonArray = (JSONArray) new XMLSerializer().read(xml);
		return jsonArray.toString();
		
	}
	
	/**
	  * 除去不想生成的字段(特别适合去掉级联的对象)
	  *
	  * @param excludes
	  * @return
	*/
	public static JsonConfig configJson(String[] excludes) {
		JsonConfig jsonConfig = new JsonConfig();
		jsonConfig.setExcludes(excludes);
		jsonConfig.setIgnoreDefaultExcludes(true);
		jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
		return jsonConfig;
	}
	
}

	public static void main(String[] args) {
		/***********************模拟查询数据库结果集**************************/
//		Province p1 = new Province(1,"吉林省");
//		Province p2 = new Province(2,"辽宁省");
//		Province p3 = new Province(3,"山东省");
//		
//		List<Province> provinces = new ArrayList<>();
//		provinces.add(p1);
//		provinces.add(p2);
//		provinces.add(p3);
		
		City city1 = new City(1,"长春市");
		City city2 = new City(2,"吉林市");
		City city3 = new City(3,"松原市");
		City city4 = new City(4,"四平市");
		City city5 = new City(5,"通化市");
		
		List<City> citys = new ArrayList<City>();
		citys.add(city1);
		citys.add(city2);
		citys.add(city3);
		citys.add(city4);
		citys.add(city5);
		
		Province province = new Province(1,"吉林省",citys);
		
		/***********************模拟查询数据库结果集**************************/
		String json = JSONUtil.object2json(province);
		
		System.out.println(json);
	}

输出结果

{"citys":[{"id":1,"name":"长春市"},{"id":2,"name":"吉林市"},{"id":3,"name":"松原市"},{"id":4,"name":"四平市"},{"id":5,"name":"通化市"}],"id":1,"name":"吉林省"}

我们今天的关于json格式数据json格式数据示例的分享就到这里,谢谢您的阅读,如果想了解更多关于102. json格式数据返回到页面 并js解析、56 Python - JSON格式数据处理、ajax发送json格式数据、Ajax将数据封装为JSON格式数据的相关信息,可以在本站进行搜索。

本文标签: