writeValueAsString封装成工具类
封装成工具类
- <span style="font-family:Microsoft YaHei;">public static String toJsonByObject(Object obj){
- String jsonStr = null;
- try {
- jsonStr = mapper.writeValueAsString(obj);
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return jsonStr;
- }
- </span>
public static String toJsonByObject(Object obj){
String jsonStr = null;
try {
jsonStr = mapper.writeValueAsString(obj);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return jsonStr;
}
================================================
如何把Java对象转化成json字符串并打印出来呢?
这里就用到了jackon的jar包,使用writeValuesAsString的方法就可以把对角转化成json字符串。
下面通过一个demo,来仔细体会下如何去转化!
1:先建一个javaBean。
- package com.sino.objectmapperdemo;
- public class BaseObject {
- private String userName;
- private String userCode;
- private double weight;
- private int height;
- private boolean sex;
- private String[] array;
- private BaseObject innerBaseObject;
- public String getUserName() {
- return userName;
- }
- public void setUserName(String userName) {
- this.userName = userName;
- }
- public String getUserCode() {
- return userCode;
- }
- public void setUserCode(String userCode) {
- this.userCode = userCode;
- }
- public double getWeight() {
- return weight;
- }
- public void setWeight(double weight) {
- this.weight = weight;
- }
- public int getHeight() {
- return height;
- }
- public void setHeight(int height) {
- this.height = height;
- }
- public boolean isSex() {
- return sex;
- }
- public void setSex(boolean sex) {
- this.sex = sex;
- }
- public String[] getArray() {
- return array;
- }
- public void setArray(String[] array) {
- this.array = array;
- }
- public BaseObject getInnerBaseObject(){
- return innerBaseObject;
- }
- public void setInnerBaseObject(BaseObject innerBaseObject){
- this.innerBaseObject = innerBaseObject;
- }
- }
2:在MainActivity中,对其进行赋值和转化操作,并打印出来。
- package com.sino.objectmapperdemo;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.Map;
- import org.codehaus.jackson.JsonGenerationException;
- import org.codehaus.jackson.map.JsonMappingException;
- import org.codehaus.jackson.map.ObjectMapper;
- import android.os.Bundle;
- import android.app.Activity;
- import android.view.Menu;
- /**
- * 使用jackon的ObjectMapper的writeValueAsString方法可以把java对象转化成json字符串
- * 输出的结果是:{"array":["80","90","95"],"height":170,"innerBaseObject":{"array":["65","68","75"],
- * "height":171,"innerBaseObject":null,"userCode":"2号","userName":"李四","weight":75.5,"sex":true},
- * "userCode":"1号","userName":"张三","weight":65.5,"sex":true}
- *
- */
- public class MainActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- try {
- ObjectMapper objectMapper = new ObjectMapper();
- // ArrayList list = new ArrayList();
- // Map<String,Object> map = new HashMap<String,Object>();
- BaseObject object1 = new BaseObject();
- object1.setUserName("张三");
- object1.setUserCode("1号");
- object1.setWeight(65.5);
- object1.setHeight(170);
- object1.setSex(true);
- String[] score={"80","90","95"};
- object1.setArray(score);
- BaseObject object2=new BaseObject();
- object2.setUserName("李四");
- object2.setUserCode("2号");
- object2.setWeight(75.5);
- object2.setHeight(171);
- object2.setSex(true);
- score=new String[3];
- score[0]="65";
- score[1]="68";
- score[2]="75";
- object2.setArray(score);
- // object2成为object1的内部类
- object1.setInnerBaseObject(object2);
- // list.add(object1);
- // map.put("baseObject", list);
- // 把对象转化成json字符串
- String json = objectMapper.writeValueAsString(object1);
- System.out.println(json);
- } catch (JsonGenerationException e) {
- e.printStackTrace();
- } catch (JsonMappingException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
writeValueAsString封装成工具类的更多相关文章
- android 仿ios 对话框已封装成工具类
对话框 在android中是一种非经常见的交互提示用户的方式,可是非常多产品狗都叫我们这些做android的仿ios,搞的我们android程序猿非常苦逼,凭什么效果老是仿ios,有没有一点情怀,只是 ...
- .NET3.5中JSON用法以及封装JsonUtils工具类
.NET3.5中JSON用法以及封装JsonUtils工具类 我们讲到JSON的简单使用,现在我们来研究如何进行封装微软提供的JSON基类,达到更加方便.简单.强大且重用性高的效果. 首先创建一个类 ...
- 封装JDBC工具类
JDBC连接数据库基本的步骤是固定的,这样就可以考虑封装一个工具类来简化数据库操作. 封装时用到了Java中的properties配置文件,是以一种键值对的形式存在的,可以把连接数据库要动态的信息保存 ...
- 打印 Logger 日志时,需不需要再封装一下工具类?
在开发过程中,打印日志是必不可少的,因为日志关乎于应用的问题排查.应用监控等.现在打印日志一般都是使用 slf4j,因为使用日志门面,有助于打印方式统一,即使后面更换日志框架,也非常方便.在 < ...
- MySQL数据库学习笔记(十一)----DAO设计模式实现数据库的增删改查(进一步封装JDBC工具类)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- JAVA中封装JSONUtils工具类及使用
在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...
- MySQL JDBC事务处理、封装JDBC工具类
MySQL数据库学习笔记(十)----JDBC事务处理.封装JDBC工具类 一.JDBC事务处理: 我们已经知道,事务的概念即:所有的操作要么同时成功,要么同时失败.在MySQL中提供了Commit. ...
- DAO设计模式实现数据库的增删改查(进一步封装JDBC工具类)
DAO设计模式实现数据库的增删改查(进一步封装JDBC工具类) 一.DAO模式简介 DAO即Data Access Object,数据访问接口.数据访问:故名思义就是与数据库打交道.夹在业务逻辑与数据 ...
随机推荐
- C++类型强制转换<转>
转载:http://www.cnblogs.com/goodhacker/archive/2011/07/20/2111996.html C风格的强制类型转换(Type Cast)很简单,不管什么类型 ...
- 用navcat编写定时任务调用存储过程
最近项目需要改动比较大,数据库结构也有所改变,这时就需要转移旧数据到新库中 第一时间想到的是用代码操作,由于两个库表结构不同,实体什么的得需要重新生成 并编写转移代码,这将是很大的工作量: 然后就想着 ...
- PAT (Basic Level) Practise (中文)- 1024. 科学计数法 (20)
PAT (Basic Level) Practise (中文)- 1024. 科学计数法 (20) http://www.patest.cn/contests/pat-b-practise/1024 ...
- please upgrade your plan to create a new private reposiory
请升级你的计划来创建一个新的私人仓库 提交仓库到github,要公开,除非买他们服务,所以把勾去掉就好了keep this code private
- shell脚本,awk实现行列转换
[root@localhost study]# cat file 张三 语文 张三 数学 李四 语文 李四 数学 王五 语文 王五 数学 王五 英语 怎么实现为下面的排序??? 语文 数学 语文 数学 ...
- C# 使用Epplus导出Excel [3]:合并列连续相同数据
C# 使用Epplus导出Excel [1]:导出固定列数据 C# 使用Epplus导出Excel [2]:导出动态列数据 C# 使用Epplus导出Excel [3]:合并列连续相同数据 C# 使用 ...
- 移动网页端HTML5 meta便签
width = device-width:标识宽度是设备屏幕的宽度 initial-scale = 1.0 :标识初始的缩放比例 minimum-scale =0.5 :表示最小的缩放比例 maxim ...
- solr DIH 设置定时索引
1 web.xml中加入 web.xml所在目录 /opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF <listener> <list ...
- Hive 启动报错,需先启动元数据
Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: Unable ...
- Oracle排错总结
一.Oracle常规恢复之不安全恢复 http://www.cnblogs.com/jyzhao/p/4723994.html#2.11