1. package com.bjs.acrosstime.utils;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Date;
  5. import java.util.List;
  6. import java.util.Map;
  7.  
  8. import org.apache.log4j.Logger;
  9. import org.codehaus.jackson.annotate.JsonIgnore;
  10. import org.codehaus.jackson.map.ObjectMapper;
  11. import org.codehaus.jackson.map.type.TypeFactory;
  12.  
  13. /**
  14. * @author Peter
  15. */
  16. public class JsonUtils {
  17.  
  18. private static Logger errLogger = Logger.getLogger("error");
  19. private static Logger apiAccessLogger = Logger.getLogger("access");
  20. private static final String PREFIX = "apiAccessAop";
  21.  
  22. //each thread has its own ObjectMapper instance
  23. private static ThreadLocal<ObjectMapper> objMapperLocal = new ThreadLocal<ObjectMapper>(){
  24. @Override
  25. public ObjectMapper initialValue(){
  26. return new ObjectMapper();
  27. }
  28. };
  29.  
  30. public static String toJSON(Object value) {
  31. String result = null;
  32. try {
  33. result = objMapperLocal.get().writeValueAsString(value);
  34. } catch (Exception e) {
  35. e.printStackTrace();
  36. }
  37. // Fix null string
  38. if ("null".equals(result)) {
  39. result = null;
  40. }
  41. return result;
  42. }
  43.  
  44. public static <T> T toT(String jsonString, Class<T> clazz) {
  45. try {
  46. return objMapperLocal.get().readValue(jsonString, clazz);
  47. } catch (Exception e) {
  48. errLogger.error("toT error: "+ jsonString,e);
  49. }
  50. return null;
  51. }
  52.  
  53. public static <T> List<T> toTList(String jsonString, Class<T> clazz) {
  54. try {
  55. return objMapperLocal.get().readValue(jsonString, TypeFactory.collectionType(List.class, clazz));
  56. } catch (Exception e) {
  57. errLogger.error("toTList error: "+ jsonString,e);
  58. }
  59. return null;
  60. }
  61.  
  62. @SuppressWarnings("unchecked")
  63. public static Map<String, Object> toMap(String jsonString) {
  64. return toT(jsonString, Map.class);
  65. }
  66.  
  67. public static void main(String[] args) {
  68. Message msg1 = new Message();
  69. msg1.uid = "1";
  70. msg1.opr_time = new Date();
  71. msg1.content = "hello world---1";
  72.  
  73. Message msg2 = new Message();
  74. msg2.uid = "2";
  75. msg2.opr_time = new Date();
  76. msg2.content = "hello world---2";
  77.  
  78. List<Message> list = new ArrayList<Message>();
  79. list.add(msg1);
  80. list.add(msg2);
  81. final String json = toJSON(list);
  82. System.out.println(json);
  83.  
  84. //String l = "[{\"opr_time\":\"2012-05-12 12:33:22\",\"uid\":\"akun\",\"content\":\"\u5927\u5730\u9707\u7684\u4eba\u4eec\u5b89\u606f\u5427\"},{\"opr_time\":\"2012-05-12 12:33:25\",\"uid\":\"requelqi\",\"content\":\"\u6211\u56de\u5bb6\u4e86\"},{\"opr_time\":\"2012-05-12 12:37:25\",\"uid\":\"stone\",\"content\":\"\u4eca\u5929\u4e0d\u65b9\u4fbf\u6e38\u620f\"}]";
  85. final List<Message> newMsg = JsonUtils.toTList(json, Message.class);
  86. System.out.println(newMsg);
  87. System.out.println((newMsg.get(0).uid));
  88. }
  89.  
  90. static class Message {
  91. String uid;
  92. Date opr_time;
  93. @JsonIgnore
  94. String content;
  95. public String getUid() {
  96. return uid;
  97. }
  98. public void setUid(String uid) {
  99. this.uid = uid;
  100. }
  101. public Date getOpr_time() {
  102. return opr_time;
  103. }
  104. public void setOpr_time(Date opr_time) {
  105. this.opr_time = opr_time;
  106. }
  107. public String getContent() {
  108. return content;
  109. }
  110. public void setContent(String content) {
  111. this.content = content;
  112. }
  113. }
  114.  
  115. }

java对象转换成json的更多相关文章

  1. Java对象转换成xml对象和Java对象转换成JSON对象

    1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...

  2. Java对象转换成Json字符串是无法获得对应字段名

    问题: 代码中已经标注 @JSONField(name = "attrs") private String abc; public String getA() { return a ...

  3. 如何将java对象转换成json数据

    package cn.hopetesting.com.test;import cn.hopetesting.com.domain.User;import com.fasterxml.jackson.c ...

  4. FastJson将Java对象转换成json

    确保环境依赖都配置好! 1.在pom.xml导入依赖 <dependency> <groupId>com.alibaba</groupId> <artifac ...

  5. Newtonsoft.Json 把对象转换成json字符串

    var resultJson = new { records = rowCount, page = pageindex, //总页数=(总页数+页大小-1)/页大小 total = (rowCount ...

  6. json 字符串转换成对象,对象转换成json字符串

    json   字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法:   [注意jquery版本问题] var str = '{"name":&qu ...

  7. DataTabel DataSet 对象 转换成json

    public class DataTableConvertJson    { #region dataTable转换成Json格式        /// <summary>         ...

  8. JSON对象转换成JSON字符串

    1.问题背景 有一个json对象,需要将其转换成json字符串 JSON.stringify(obj) 2.实现源码 <!DOCTYPE html PUBLIC "-//W3C//DT ...

  9. 将Model对象转换成json文本或者json二进制文件

    将Model对象转换成json文本或者json二进制文件 https://github.com/casatwy/AnyJson 注意:经过测试,不能够直接处理字典或者数组 主要源码的注释 AJTran ...

随机推荐

  1. windows server 2012 使用问题

    1.端口映射,把宿主机的端口映射到hyper-v创建的虚拟机上 访问宿主机的公网IP的某个端口,就等于访问这个虚拟机上的端口 具体实现: 在宿主机上命令行输入 添加一个端口映射 netsh inter ...

  2. oracle根据某个字段去重实例

    if not object_id('Tempdb..#T') is null drop table #T Go Create table #T([ID] int,[Name] nvarchar(1), ...

  3. DX系列之TreeList

    参考资料: DevXpress控件: 第三篇: 将 父子 关系进行到底

  4. MFC下打开选择文件夹并获取文件夹的绝对路径

    http://blog.csdn.net/w18758879921/article/details/51613382 http://www.cnblogs.com/greatverve/archive ...

  5. D3.js学习(四)

    上一节我们已经学习了线条样式和格栅的绘制,在这一节中我们将要根据之前绘制的线条对图表进行填充,首先来看一下我们的目标吧 在这个图表中,我们对位于线条下面的空间进行了填充,那么,如何改做到呢? 设置填充 ...

  6. bzoj3744 Gty的妹子序列

    我是萌萌的传送门 感觉这题还是不错的--虽然其实算是比较水的题= = 首先分块,令f[i][j]表示第i块到第j块的逆序对数,询问的时候直接计算不完整块与完整块以及不完整块之间的逆序对. 不完整块之间 ...

  7. Erlang C1500K长连接推送服务-性能

    Whatsapp已经使用Erlang在生产环境跑到96GB内存单机 3M长连接,参加:WhatsApp的Erlang世界.毕竟业务级别能达到Whatsapp那样极少,现在只有千万级,单机太多挂一台影响 ...

  8. nginx windows负载均衡入门

    前言 做了几年开发,都是只管码代码,没有参与过项目的部署,为了知识体系更加完整,于是开始学习一下负载均衡.查了一下资料,觉得用nginx +iis 比较简单,于是小试牛刀. 步骤 准备工作 下载ngi ...

  9. Anaconda 用于科学计算的 Python 发行版

    用于科学计算的 Python 发行版: 1.Anaconda  https://www.continuum.io/    公司continuum.  有商业版本. Anaconda is the le ...

  10. IE不能上网,但是其他浏览器可以

    打开IE_工具_internet选项_连接_局域网设置_(勾选)自动检测配置其它的勾去掉,确定.