`
y806839048
  • 浏览: 1120579 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

json组装

 
阅读更多
组装json:
1,建立对应结构的实体:
一层括号一个类(多个实体分开来建立,否则识别不到)
json到实体没有重复的属性数不需要executive的,list的格式会转化类变成MorphDynaBean。
======
你需要在JSONObject.toBean的时候把list的元素类型当成参数传进去。代码如下,你肯定看得懂MapClass> classMap = new HashMapClass>();classMap.put("list", B.class);A j = (A) JSONObject.toBean(json, A.class,classMap);

======
实体到json有建立的jpa相互关联的要排除,没建立jpa对应的不许排除,直接转化
排除1,实体中注解排除@Entity
@JsonIgnoreProperties(value={"processLogs"})属性不进行json的转化,忽略这个属性的json转化
2,json时executive
中途有[]重复多个的为list
public String getWorkProcessLogById() {
String id=model.getId();
List<ProcessLog> a = new ArrayList<ProcessLog>();
a= this.getService().getWorkProcessLogById(id);
JsonConfig config = new JsonConfig();
config.setExcludes(new String[]{"troubleProcesOrder","workOrder","notice"});

String json = JSONArray.fromObject(a, config).toString();
  HttpServletResponse response =  ServletActionContext.getResponse();;
response.setCharacterEncoding("utf-8");
        ServletOutputStream out = null;
try
        {
        out = response.getOutputStream();
            out.write(json.getBytes());
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        finally
        {
        try {
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
        }
        return null;
}


package Test;


import com.ces.zwww.entity.GisObject;
import com.ces.zwww.utils.JsonUtil;

public class Test {


public static void main(String[] args) {
String res="[{" +
"'id' : '3b04b3aa-939e-4cab-bb16-13e515a52f57'," +
"'createTime' :'2014-07-28 14:3'," +
"'status' : '一线处理中'," +
"'currentActors' :'顶级管理员'," +
"'creator' : '系统'," +
"'closer' : null," +
"'appealUserEmail' : null," +
"'tecCategory' : null," +
"'kind' : '故障','faultCause' : null," +
"'related_knowledge' : null," +
"'appealUserOrg' : null," +
"'closeTime' : null," +
"'oneTimeSuccess' : '是'," +
"'scoreTime' : null," +
"'relatedTicket' : null," +
   "'importance' : '中'," +
   "'outId' : null," +
   "'appealApproveOpinion' : null," +
   "'relateAsset' : null," +
   "'relateResource' : null," +
   "'attachFile_Solve' : null," +
   "'occurTime' : '2014-07-28 14:35'," +
   "'outOfSla' : '否'," +
   "'title' : '测试demo'," +
   "'attachFile' : null," +
   "'priority' : '中(1天)'," +
   "'appealUserPhone' : null," +
   "'solver' : null," +
   "'recordTime' : '2014-07-28 14:35'," +
   "'urgency' : '中'," +
   "'flowNo' : 'SJ_20140728_0008'," +
   "'appealUserId' : null," +
   "'detail' : '事件描述'," +
   "'slaNoticeSent' : '否'," +
   "'appealUserName' : null," +
   "'briefSolvent' : null," +
   "'incidentSource' : '监控系统'," +
   "'closeCode' : null," +
   "'solvent' : null," +
   "'announcer' : '系统'," +
   "'faultType1' : null," +
   "'faultType2' : null," +
   "'announcerDept' : null," +
   "'category' : '文档服务器'," +
   "'score' : null," +
   "'solveTime' : null," +
   "'solveMode' : null," +
   "'planSolveTime' : null," +
   "'announceTime' : '2014-07-28 14:35' ," +
   "'processLogs' : [ {" +
   "'stage' : '新建事件'," +
   "'actorId' : 'admin'," +
   "'actorName' : '顶级管理员'," +
   "'submit' : '交办'," +
   "'memo' : '同意'," +
   "'recordTime' : '2014-07-18 11:34'," +
   "'cnName' : null" +
   "}, {" +
   "'stage' : '一线处理中'," +
   "'actorId' : 'admin'," +
   "'actorName' : '顶级管理员'," +
   "'submit' : '子流程'," +
   "'memo' : '请修改'," +
   "'recordTime' : '2014-07-18 11:34'," +
   "'cnName' : null" +
       "}]" +
"}]";
String aa ="{" +
"'$310106':{" +
"'bgcolor':'0xFF0000', " +
"'opacity':'10'," +
"'tooltip':" +
"{" +
"'url':'http://www.baidu.com', " +
"'div':" +
" [{ " +
"'ico':'ico',  " +
"'txt': '30/800'" +
"}," +
"{" +
"'ico': 'ico1',  " +
"'txt': '30/600'" +
"}]," +
"'type':'0' " +
"}" +
"}," +
"'$310107':{" +
"'bgcolor':'0x00FF00', " +
"'opacity':'5'," +
"'tooltip':" +
"{" +
"'url':'http://www.sohu.com', " +
"'div':" +
" [{ " +
"'ico': 'ico2',  " +
"'txt': '30/800'" +
"}," +
"{" +
"'ico': 'ico3',  " +
"'txt': '30/600'" +
"}]," +
"'type':'0' " +
"}" +
"}" +
"}";
// Srtring a =JsonUtil.
System.out.println(res);
GisObject a= (GisObject) JsonUtil.jsonStrToObjectOb(aa, GisObject.class);
String b =JsonUtil.objectToJsonStr(a);
System.out.println(b);

}
}




/**
*
*/
package com.ces.zwww.entity;


/**
* @author yu hui
*
*
* 割接工单表
*
*/

public class GisObject  {

private Region $310106;
private Region $310107;
/**
* @return the $310106
*/
public Region get$310106() {
return $310106;
}
/**
* @param $310106 the $310106 to set
*/
public void set$310106(Region $310106) {
this.$310106 = $310106;
}
/**
* @return the $310107
*/
public Region get$310107() {
return $310107;
}
/**
* @param $310107 the $310107 to set
*/
public void set$310107(Region $310107) {
this.$310107 = $310107;
}



}





package com.ces.zwww.entity;

import java.util.List;



public class Region {
public String bgcolor;
public String opacity;
public Tip tooltip;
/**
* @return the bgcolor
*/
public String getBgcolor() {
return bgcolor;
}
/**
* @param bgcolor the bgcolor to set
*/
public void setBgcolor(String bgcolor) {
this.bgcolor = bgcolor;
}
/**
* @return the opacity
*/
public String getOpacity() {
return opacity;
}
/**
* @param opacity the opacity to set
*/
public void setOpacity(String opacity) {
this.opacity = opacity;
}
/**
* @return the tooltip
*/
public Tip getTooltip() {
return tooltip;
}
/**
* @param tooltip the tooltip to set
*/
public void setTooltip(Tip tooltip) {
this.tooltip = tooltip;
}

}


package com.ces.zwww.entity;

import java.util.List;


public class Tip {
public String url;
public List<Div> div;
public String type;
/**
* @return the url
*/
public String getUrl() {
return url;
}
/**
* @param url the url to set
*/
public void setUrl(String url) {
this.url = url;
}
/**
* @return the div
*/
public List<Div> getDiv() {
return div;
}
/**
* @param div the div to set
*/
public void setDiv(List<Div> div) {
this.div = div;
}
/**
* @return the type
*/
public String getType() {
return type;
}
/**
* @param type the type to set
*/
public void setType(String type) {
this.type = type;
}


}



package com.ces.zwww.entity;

public class Div {
public String ico;
public String txt;
/**
* @return the ico
*/
public String getIco() {
return ico;
}
/**
* @param ico the ico to set
*/
public void setIco(String ico) {
this.ico = ico;
}
/**
* @return the txt
*/
public String getTxt() {
return txt;
}
/**
* @param txt the txt to set
*/
public void setTxt(String txt) {
this.txt = txt;
}

}
分享到:
评论

相关推荐

    Java组装json和java解析json数组

    附件内容为:Java组装map数据,然后转换为json数据格式;Java解析json数据

    某车某家汽车品牌以及车型.json

    本文将深入探讨“某车某家汽车品牌以及车型.json”文件所涉及的知识点,包括JSON格式、汽车数据的结构、Python的数据处理以及汽车行业的数据分析应用。 首先,我们要了解JSON(JavaScript Object Notation)是一种...

    JSON的封装和解析

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web服务和应用程序之间的数据传输。它的设计目标是人可读性高且易于编写,同时也方便机器解析和生成。JSON格式基于JavaScript的一个子集...

    JXM.http文档

    根据提供的文件信息,我们可以深入探讨JMeter中JSON数据组装的方法以及如何使用不同的组件来实现这一目标。本篇文章将重点解析JMX文件中的关键组件及其在处理JSON格式数据时的应用。 ### JMeter概述 Apache JMeter...

    解决javascript组装json的繁琐问题

    然而,处理JSON的组装过程可能会变得繁琐,尤其是在需要构建复杂的数据结构时。本篇文章将探讨如何解决这个问题,通过使用内部的javabean模式和JavaScript的原型链特性来简化JSON数据的拼装。 首先,理解JavaScript...

    json数据组装

    在这个主题中,我们将深入探讨如何根据需求组装JSON数据。 1. JSON基本结构: JSON数据主要由键值对组成,类似于JavaScript的对象。键用引号包围,值可以是字符串、数字、布尔值、数组、null或另一个JSON对象。...

    VB6.0dictToJsonString.zip

    描述中的"简单的传入可以实现自动化json组装"提示我们,这个项目提供了一个简单的方法,通过输入字典,即可自动生成符合JSON格式的字符串。在VB6.0中,字典对象是一种容器,可以存储键值对,这在处理结构化数据时...

    Qt5.5 二次封装QJsonDocument 实现Json更加方便的组装、解析

    自己根据CMarkup启发,使用QJsonDocument完成类似CMarkup调用的json组装解析实例,内测多次无问题,目前还有优化空间,我的环境是qt5.5,欢迎大家提出不同意见共同进步。 本实例使用数据为测试数据,实际数据可根据...

    使用Gson和Json-lib去解析json和组装Json数据例子

    本文将深入探讨如何使用两个流行的Java库——Gson和Json-lib来解析和组装JSON数据。 **一、Gson库** Gson是由Google开发的一个Java库,它能将Java对象转换为JSON字符串,也能将JSON数据转换回等效的Java对象。使用...

    PHP操作数据库得到数据进行JSON组装

    &lt;?... mysql_connect(localhost,root,); mysql_select_db(myhospitalv2);... print(json_encode($output)); mysql_close(); ?&gt;  2.浏览器返回结

    Oracle组装json案例

    Oracle组装json案例

    java根据数据库表内容生产树结构json数据的方法

    在Java开发中,将数据库表内容转换为树结构的JSON数据是常见的需求,尤其是在构建具有层级关系的数据展示,如组织架构、菜单系统等。本文将详细介绍如何使用Java根据数据库表内容生成树结构的JSON数据。 首先,我们...

    VB利用官方api读写JSON数据格式文件简单实例

    在VB(Visual Basic)编程环境中,使用官方API来读写JSON数据格式文件是常见的操作,尤其是在处理网络数据交换或者存储配置信息时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和...

    pb操作json库

    PB操作JSON库主要涉及到PowerBuilder(PB)编程环境中对JSON数据的处理。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于Web服务和应用程序之间的数据传输。在PowerBuilder中,为了处理...

    AJAX和struts2传递JSON数组

    这里,`data`是我们的JSON数组,`contentType`设置为`application/json`表明我们正在发送JSON数据,`JSON.stringify()`用于将JavaScript对象序列化为JSON字符串。 **二、后端Struts2 Action接收JSON** 在Struts2的...

    json生成与解析示例

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。它以文本形式存储和传输数据,易于人阅读和编写,同时也容易让机器解析和生成。在Java和Android开发中,JSON...

    C++ Json编码/解析

    C++中的JSON编码和解析是软件开发中常见的一项任务,特别是在网络通信和数据存储中。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其简洁和易于阅读的特性而广泛使用。在C++中,`jsoncpp`库是...

    组装JSONObject(自动)

    传入实体类对象,自动组装成JSON对象。

    JSON解析/生成调试器源码-易语言

    本次开源项目为JSON系列整套解决方案。*本方案可自动生成json索引表达式和排除json语法错误以及生成json文本等功能。 *混E官方论坛的应该了解该方案可以说是目前易语言 json开发方面最高开发效率的 成熟解决 方案。*...

    基于C#的XML和json的组装,解析,互转源码.zip

    在C#编程环境中,XML和JSON是两种广泛使用的数据交换格式。XML(eXtensible Markup Language)是一种结构化数据格式,而JSON(JavaScript Object Notation)则是一种轻量级的数据交换格式,常用于Web服务之间的数据...

Global site tag (gtag.js) - Google Analytics