json java typeof_Json对象与Json字符串的转化、JSON字符串与Java对象的转换

一.Json对象与Json字符串的转化

1.jQuery插件支持的转换方式:

$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象

2.浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器:

JSON.stringify(obj)将JSON转为字符串。JSON.parse(string)将字符串转为JSON格式;

var a={"name":"tom","sex":"男","age":"24"};

var b='{"name":"Mike","sex":"女","age":"29"}';

var aToStr=JSON.stringify(a);

var bToObj=JSON.parse(b);

alert(typeof(aToStr));  //string

alert(typeof(bToObj));//object

3.Javascript支持的转换方式:

eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号

注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。

4.JSON官方的转换方式:

http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;

可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。

二、JSON 字符串 与 java 对象的转换

1. 把java 对象列表转换为json对象数组,并转为字符串

JSONArray array = JSONArray.fromObject(list);

String jsonstr = array.toString();

2. 把java对象转换成json对象,并转化为字符串

JSONObject object = JSONObject.fromObject(user);

Log4jInit.ysulogger.debug(object.toString());

3.把JSON字符串转换为JAVA 对象数组

JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串

List users= (List)JSONArray.toCollection(json, User.class);

4.把JSON字符串转换为JAVA 对象

JSONObject jsonobject = JSONObject.fromObject(jsonStr);

User user= (User)JSONObject.toBean(object,User.class);

本文转载自:https://www.cnblogs.com/zq-boke/p/5833387.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/427200.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Fiddler 学习笔记---命令、断点

输入命令框&#xff1a; 1 输入 &#xff1f;51testing 高亮显示对应记录 2 >10 选择body大于10的记录 3 <10 选择body<10的记录 4 200 选择result200的记录行 5 www.51testing.com 选择host包含www.51testing.com的记录 6 select image 选择 content-type 包含image…

docker Registry镜像仓库

docker search whalesay搜索 2docker pull docker/whalesay 拉取镜像 3docker ps 4docker run docker/whalesay cowsay Docker不错 5docker tag docker/whalesay xibeifeng/whalesay docker images 6登录hub官网 可以 docker push xibeifeng/whalesay上传咯

java中的集合框架_JAVA中的集合框架(上)List

第一节 JAVA中的集合框架概述集合的概念&#xff0c;现实生活中&#xff1a;很多事物凑在一起就是一个集合&#xff1b;数学中的集合&#xff1a;具有相同属性事物的总体&#xff1b;JAVA中的集合&#xff1a;是一种工具类&#xff0c;就像是容器&#xff0c;储存任意数量的具有…

【接口时序】2、Verilog实现流水灯及与C语言的对比

一、 软件平台与硬件平台 软件平台&#xff1a; 1、操作系统&#xff1a;Windows-8.1 2、开发套件&#xff1a;ISE14.7 3、仿真工具&#xff1a;ModelSim-10.4-SE 硬件平台&#xff1a; 1、FPGA型号&#xff1a;XC6SLX45-2CSG324 二、 原理介绍 我的开发板上有4个LED灯&#xf…

python中文编程教学_中谷python中文视频教程(全38集)

python在线教学视频教程共40节&#xff0c;中谷教育录制&#xff0c;主要介绍了python编程方面的知识。python在线教学-01-走进pythonpython在线教学-02-开始编程吧python在线教学-03-变量python在线教学-04-运算符-表达式python在线教学-05-数据类型-数字-字符串python在线教学…

java 异步socket_java Socket读写异步分离

在Android开发中&#xff0c;基于Socket的通信必须是非阻塞式的&#xff0c;因此需要Reader和Writer异步分离&#xff0c;此外需要监听Socket网络状态、监听接口package com.io.sockets;import java.io.IOException;import java.net.Socket;public interface SocketStatusListe…

windows下安装mysql服务

1.下载 首先上MySql的官网下载 https://dev.mysql.com/downloads/mysql/ &#xff0c;本人下载的是 mysql-5.7.24-winx64.zip版。 2.解压存放目录 下载完解压到你想要存放的位置 我的是解压到D:\Program Files\MySQL 。 3.配置环境变量 在环境变量path中追加一句&#xff1a;;D…

web.xml 配置文件 超详细说明!!!

一、web.xml是什么&#xff1f; 首先 web.xml 是java web 项目的一个重要的配置文件&#xff0c;但是web.xml文件并不是Java web工程必须的。 web.xml文件是用来配置&#xff1a;欢迎页、servlet、filter等的。当你的web工程没用到这些时&#xff0c;你可以不用web.xml文件来配…

python条件表达式三门课至少有一门及格_Python/ MySQL练习题(一)

Python/ MySQL练习题(一)2、查询“生物”课程比“物理”课程成绩高的所有学生的学号1 SELECT2 *3 FROM4 (5 SELECT6 *7 FROM8 course9 LEFT JOIN score ON score.course_id course.cid10 WHERE11 course.cname ‘生物‘12 ) AS A13 INNER JOIN (14 SELECT15 *16 FROM17 course…

window上安装mysql服务核心版(亲测可用)

上次安装服务启动后&#xff0c;这次又准备重新安装&#xff0c;出现了了很多问题 1首先我们还是去官网下载对应的window安装包 2放置在D:\Program Files\mysql下面&#xff0c;没有则新建一个Program Files 3在同路径下E:\Program Files\mysql建立一个my.ini文件 [mysql] 设置…

java添加信息_java – 向异常添加信息

我想向堆栈跟踪/异常添加信息.基本上我现在有这样的东西,我真的很喜欢&#xff1a;Exception in thread "main" java.lang.ArithmeticException: / by zeroat com.so.main(SO.java:41)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect…

python封装模块_Python练手,封装日志模块,v2

前面第1版写好后&#xff0c;很凌乱&#xff0c;主要的问题在于&#xff0c;Python不支持方法重载&#xff0c;想要灵活创建对象&#xff0c;当时的变通办法是&#xff0c;先链式地有选择地设置属性(方法重载的本质就是有选择地设置属性)&#xff0c;再做实例化&#xff0c;这样…

发现了拯救“文献多的一团麻”的工具

Endnotes是一款好的文献管理工具; 可用以收集文献&#xff1b;整理在引用文献时的不知所踪(提前在reference中细化标题)&#xff1b;还有一些在阅读文献时 转瞬即逝的灵感(notes); 使用笔记来自&#xff1a;感谢其悉心编写。 http://blog.sciencenet.cn/blog-484734-367968.htm…

windows安装apache

1打开apache官网http://httpd.apache.org/ 下载win版本 2解压放入D盘D:\Apache24 3修改http.conf,安装路径 端口改成8080&#xff0c;避免占用&#xff0c;原先是80 4http -t检查配置文件合法 5httpd -k install -n apache安装主服务 6net start apache

java语言中的标识符_Java语言基本语法(一)————关键字标识符(Java语言标识符命名规范Java语言的包名、类名、接口名、变量名、函数名、常量名命名规则 )...

一、关键字关键字的定义和特点定义&#xff1a;被Java语言赋予特殊含义&#xff0c;用做专门用途的字符串(单词)。特点&#xff1a;关键字中所有字母均为小写下面列举一些常用的关键字。用于定义数据类型的关键字&#xff1a;byte、short、int、long、float、double、char、boo…

数组的合并和升序排列_leetcode No.31 下一个排列

题目链接&#xff1a;下一个排列 - 力扣&#xff08;LeetCode&#xff09;​leetcode-cn.com题目描述&#xff1a;实现获取下一个排列的函数&#xff0c;算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列&#xff0c;则将数字重新排列成…

公司网络故障那些事(路由器变交换机)

首先这次网络故障是断电引起的 我给大家画个模型 三层的为八口交换机 一层的为五口打印机 笔记本代表两台无线打印机 首先八口的连接了公司采购电脑一台&#xff0c;业务电脑一台&#xff0c;其他电脑三台 第二个五口交换的连接财务电脑两台 最后一个五口交换机连接两台无线打印…

【原创】大公司为什么还在采用过时的技术

背景 本文出自一朋友给我的提问&#xff0c;于是博主呕心沥血给他花式洗脑了几个小时。忽然发现&#xff0c;应该还有许多朋友有同样的疑问。所以整理成文。 许多刚毕业的程序员朋友&#xff0c;都有一个执念&#xff0c;想要进那种规模大一点的公司、上市的、业内有名的最好。…

java 文件上传 配置_SpringMVCMultipartFilefile文件上传及参数接收

一、form表单属性中加上enctype"multipart/form-data"form表单的二、配置文件中配置MultipartResolver文件超出限制会在进入controller前抛出异常&#xff0c;在允许范围内这个配置无影响三、MultipartFile接受文件并通过IO二进制流(MultipartFile.getInputStream())…

list foreach方法_Java集合三兄弟List,Set,Map你分的清楚吗?

前言集合作为Java基础知识的核心部分&#xff0c;不论是在面试还是平时工作中都是经常遇见的。当然面对熟悉的List、Set、Map&#xff0c;面试管的提问一般也都不会从简单的问题出发了&#xff0c;今天就来聊下集合中的高级部分&#xff0c;让你对它们的理解更加清楚。一、List…