文档章节

java对象转json

gh200
 gh200
发布于 2017/02/15 10:39
字数 283
阅读 4
收藏 0

两个类  一个json文件

  • 运行类 

public class ClassforJson {

    public static void main(String[] args) {
        /**
         jar包 
         json-lib-2.4-jdk15.jar
         
         maven 依赖文件
          <dependency>
                <groupId>net.sf.json-lib</groupId>
                <artifactId>json-lib</artifactId>
                <classifier>jdk15</classifier>
            </dependency>
          
         */
        
        String productcode = "2016";
        String itemcode = byProductGetItem(productcode);
        System.out.println(itemcode);
    }
    
    public static String byProductGetItem(String productcode){
        // C:\\Users\\gh\\Desktop\\test.json
        //saveJsonFile("E:\yindd\slaughter.json");
        //json文件存放路径(如:F:\cctv.json)
        String data= read("C:\\Users\\gh\\Desktop\\test.json");
        System.out.println(data);
        JSONObject jsonObj = JSONObject.fromObject(data);
        JSONArray arrayA=jsonObj.getJSONArray(productcode);
        DownloadProductItem a = (DownloadProductItem) JSONObject.toBean((JSONArray.fromObject(arrayA.toString()).getJSONObject(0)),DownloadProductItem.class);
        return a.getTermCode();
    }
    
    //从指定路径找到文件并读取至字符串后返回
    public static String read(String filePath)
    {
        // 读取txt内容为字符串
        StringBuffer txtContent = new StringBuffer();
        // 每次读取的byte数
        byte[] b = new byte[8 * 1024];
        InputStream in = null;
        try
        {
                // 文件输入流
                in = new FileInputStream(filePath);

                while (in.read(b) != -1)
                {
                    // 字符串拼接
                    txtContent.append(new String(b));

                }
                // 关闭流
                in.close();
        }
        catch (FileNotFoundException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        catch (IOException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        finally
        {
            if (in != null)
            {
                try
                {
                    in.close();
                }
                catch (IOException e)
                {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }
        return txtContent.toString();

    } 
}
 

A 类

public class A {

    public String name ;
    public String sex;
    public A(){}
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    
}

  • json 文件 test.json
    {
      "2016":
      [
        {
           "productName": "bubdfdf",
            "productCode": "2016",
            "termCode": "12,13,14"
        }
      ],
      "2014":
      [
        {
            "productName": "dfdfdfdsfd",
            "productCode": "2014",
            "termCode": "22,23,24"
        }
      ]
    }

© 著作权归作者所有

共有 人打赏支持
gh200
粉丝 0
博文 28
码字总数 9631
作品 0
东城
程序员
有效选择七个关于Java的JSON开源类库

April 4, 2014 By Constantin Marian Alin 翻译:无若 (英语原文:http://www.developer.com/lang/jscript/top-7-open-source-json-binding-providers-available-today.html) 简介 JSON是J......

无若
2014/04/19
0
1
Java序列化与JSON序列化大比拼

一、背景 有项目需要传输Map结构的数据,有人倾向用Java序列化来做,有人倾向用JSON的序列化来做。所以我们还是比比吧。 Java观点:Object2Object,使用时简单快速。 JSON观点:JSON格式与语...

NoahX
2013/03/10
0
20
JSON-lib框架,转换JSON、XML不再困难

JSON-lib框架,转换JSON、XML不再困难 Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对...

DavidBao
2015/05/01
0
0
JSON-lib框架,转换JSON、XML

Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象。 一、 准备工作 1、 首先要去官方...

五大三粗
2015/11/03
0
0
机动车登记证样本 北京 天津 上海 河北省 深圳 广东省 河北省 机动车

xml转json的两种方法 1.第一种方法 使用JSON-JAVA提供的方法,之前一直使用json-lib提供的方法转json,后来发现了这个开源项目,觉得用起来很不错,并且可以修改XML.java中的parse方法满足自...

java小吊
08/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
57分钟前
1
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
2
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
1
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
1
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部