参考资料:http://swiftlet.net/archives/category/json,十分感谢~

平时做项目,难免有遇到使用json对象的时候,这个东西不难,但是一不使用久了,就会忘记,所以把它的基本用法写一下。

前提: 导入相关的jar文件:

commons-lang-1.0.4.jar 
commons-collections-2.1.jar 
commons-beanutils-1.8.0.jar 
json-lib-2.4.jar 
ezmorph-1.0.6.jar 
commons-logging-1.1.jar

然后就可以开发啦~

一)javaBean转换为json

  (1)先写一个javaBean

  

public class User  implements Serializable{
private static final long serialVersionUID = 1L; private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

然后就把这个javaBean转换为JSONObject:

    public static void main(String[] args) {
//javaBean对象转换为json字符串
User user = new User();
user.setUsername("Rime");
user.setPassword("1234");
JSONObject json1 = JSONObject.fromObject(user);
System.out.println(json1.toString()); //map转换为json字符串
HashMap<Object,Object> userMap = new HashMap<Object,Object>();
userMap.put("username", "Rime");
userMap.put("password", "1234");
JSONObject json2 = JSONObject.fromObject(userMap);
System.out.println(json2.toString());
}

输出的内容如下:

{"password":"1234","username":"Rime"}
{"username":"Rime","password":"1234"}

看到这里,你可能会有疑问,是不是什么对象都能够转换为JSONObject呢?答案当然是:不。

JSONObject.fromObject(Object object)方法只对以下集中类型的对象有效:JSON formatted strings,Maps,DynaBeans and JavaBeans。

【注意】DynaBeans是commons-beanutils定义的动态bean。DynaBean并不是Java中所定义的Bean,而是一种"假"的Bean。因为它并不是通过getXXX和setXXX方法,对XXX属性进行取值和设值的。
如果object是其他类型的参数呢?比如说数字,逻辑值,非json格式的字符串,那么将生产空的JSONObject对象。

JSONObject基本内容(一)的更多相关文章

  1. JSONObject基本内容(三)

    参考资料:http://swiftlet.net/archives/category/json    十分感谢!!!~~ 第三篇的内容,主要讲述的有两点: 1 .如何获取JSONObject中对应ke ...

  2. JSONObject基本内容(二)

    参考内容:http://swiftlet.net/archives/category/json  十分感谢!!! 这部分的内容主要是讲述 javaBean转换为JSONObect时,如果有些属性不需要 ...

  3. JSONObject,JSONArray,Map,String之间转换

    http://blog.csdn.net/superit401/article/details/51727739 1.String转JSONObject String jsonMessage = &q ...

  4. JSONObject处理java.util.Date

    JSONObject的内容为: {"userId":"A000004FFDCE14","userName":"好好干g" ...

  5. fastjson的JSONArray和JSONObject

    转自: http://blog.csdn.net/tangerr/article/details/76217924 Fastjson是国内著名的电子商务互联网公司阿里巴巴内部开发的用于java后台处理 ...

  6. java和js中JSONObject,JSONArray,Map,String之间转换

    --------------------------------------------------Java中--------------------------------------------- ...

  7. JSONObject,JSONArray,String,Map间的互转

    引言      在平常的Web项目开发过程中,json和String.map是最常用的类型和返回结果集,其中也经常会涉及到之间的各种相互转换,下边就总结一下: 1.String转JSONObject ...

  8. 极光推送-Java后台实现方式一:Http API

    Java后台实现极光推送有两种方式,一种是使用极光推送官方提供的推送请求API:https://api.jpush.cn/v3/push,另一种则是使用官方提供的第三方Java APIjar包,这里先 ...

  9. 极光推送经验之谈-Java后台服务器实现极光推送的两种实现方式

    原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/6439313.html Java后台实现极光推送有两种方式,一种是使用极光推送官方提供的推送请 ...

随机推荐

  1. android view绘制流程 面试

    一.view树的绘制流程 measure--->layout--->draw measure 1.ViewGroup.LayoutParams 指定部件的长宽 2.MeasureSpec ...

  2. pycharm2018破解

    1.下载 链接:https://pan.baidu.com/s/1G0C9xoUQg6JRgNQYLMIi1w 密码:2z3x 2.修改 "G:\Python\JetBrains\PyCha ...

  3. 如果你的ie内核浏览器总是缓冲数据的话

    如果你的ie内核浏览器总是缓冲数据的话 运行cmd,输入netsh winsock reset wincock是支持多种协议的网络编程接口 因为ie内核的浏览器的一些设置和插件可能会被其他软件篡改,所 ...

  4. dubbo系列三、架构介绍及各模块关系

    一.整体设计 图例说明: 图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供方使用的接口,位于中轴线上的为双方都用到的接口. 图中从下至上分为十层,各层均为单向依赖,右边的黑色箭头代 ...

  5. centos命令行变成了-bash-4.1$的解决办法

    在使用root用户是先建立了用户yunva的家目录,然后添加yunva用户,切换到yunva用户后发现 命令行变成了-bash-4.1$ ①方法一(临时生效,不推荐) 1. bashrc 在当前目录下 ...

  6. windows下搭建eclipse关于python的开发环境及初始化参数配置

    1.安装jdk 因为eclipse是java开发的,运行eclipse程序需要安装jdk 安装jdk以后需要配置java_home环境变量 2.安装python2.7(比较简单,此处略) 3.下载ec ...

  7. linux块设备驱动

    块设备驱动程序<1>.块设备和字符设备的区别1.读取数据的单元不同,块设备读写数据的基本单元是块,字符设备的基本单元是字节.2.块设备可以随机访问,字符设备只能顺序访问. 块设备的访问:当 ...

  8. (转)eclipse 创建maven web项目

    1.新建Maven项目 1.1 File -> New -> Other 1.2 选择Maven Project ,单击Next 1.3 保持默认即可,单击Next 1.4 选择Arche ...

  9. Numpy详解

    NumPy 简介 Python并没有提供数组功能.虽然列表可以完成基本的数组功能,但它不是真正的数组,而且在数据量比较大时,使用列表的速度会很慢.为此,Numpy提供了真正的数组功能,以及对数据进行快 ...

  10. bert 词典扩充方案