jsonarray

net.sf.ezmorph.bean.MorphDynaBean cannot be cast to com.console.demo.web.model.XXX

血红的双手。 提交于 2019-11-28 09:48:09
前景: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to com.console.demo.web.model.XXX //jsonObject:所有参数 //FreightTemplate对象里面包含一个 private List<FreightTemplateCity> freightTemplateCity; 类似于一父多子 FreightTemplate freightTemplate = (FreightTemplate) JSONObject.toBean(JSONObject.fromObject(jsonObject.get("freightTemplate")), FreightTemplate.class); //先新增freightTemplate businessDao.insertSelective(freightTemplate); //取出子list对象 List<FreightTemplateCity> freightTemplateCities = freightTemplate.getFreightTemplateCity(); //遍历新增子对象 //PS:这句for循环报的错 for (FreightTemplateCity freightTemplateCity :

在jsp页面解析jsonarray

你说的曾经没有我的故事 提交于 2019-11-28 05:08:17
在jsp页面解析jsonarray 首先需要将后台传过来的json串转成json对象: jsonData=eval("("+data+")"); //或者 var jsonData = eval(data); 然后将该json对象循环遍历将其中的数据取出来 1、什么是eval函数 eval()是一个函数,有且只有一个参数string,为字符串类型 eval(string) 特点:若string为js代码时,会直接解析执行,若是普通字符串,则返回原字符串。 2、eval解析json数据 错误实例: var jsonstr = "{name:'test',age:18}"; var jsonobj = eval(jsonstr);//拼接过程 3、错误提示: SyntaxError: invalid label 为什么会这样? 原因在于:eval本身的问题。 由于json是以”{}”的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式。 加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式(expression)转化为对象,而不是作为语句 (statement)来执行。 4、如何解决? var josnobj = eval("("+jsonstr+")"); 或者这样 eval("var jsonobj

JSONArray的使用

左心房为你撑大大i 提交于 2019-11-27 23:46:51
用的是fastjson.jar包 1. jsonarray,jsonobject 使用正确代码如下:(这种getJSONObject 函数形成jsonobj 的方式非常好,可以避免循环引用或jsonobj 后来的覆盖前面的) [java] view plain copy public JSONArray getJSONArray(){ JSONArray jsonarray = new JSONArray(); jsonarray.add(getJsonObj( "name", "ar.arch.lcalplay")); jsonarray.add(getJsonObj( "name", "ar.arch.ticet")); jsonarray.add(getJsonObj( "name", "ar.arch.hotl")); jsonarray.add(getJsonObj( "name", "ar.arch.surehotel")); return jsonarray; } public JSONObject getJsonObj(String name, String value) { JSONObject jsonobj = new JSONObject(); jsonobj.put(name,value); return jsonobj; }

JSON和Map,List,String互相转换

ぃ、小莉子 提交于 2019-11-27 13:05:52
1)Map 和 JSON 互相转换   Map 转成 JSON 1 Map<String, List> map = new HashMap<>(); 2 map.put("xAxis",xAxis); 3 map.put("yAxis",yAxis); 4 String json = JSON.toJSONString(map);//map转String   JSON 转成 Map String data = "阿萨德"; Map<String, List> map = JSONObject.parseObject(data, Map.class); 2)List 和 JSON互相转换    List 转成 JSON 1 List <Phone> list = new ArrayList<Phone>(); 2 String str = JSON.toJSON(list).toString();   JSON 转成 List 1 String data; 2 List<MoveFormBean> list = JSONObject.parseArray(data, MoveFormBean.class); 3) JSON 和 String 互相转换    String 转成 JSONArray 或 JSONObject String data; /

java FastJson的使用总结

*爱你&永不变心* 提交于 2019-11-27 13:03:00
1.前言 1.1.FastJson的介绍:   JSON (javaScript Object Notation)是一种轻量级的数据交换格式。主要采用键值对( {"name": "json"} )的方式来保存和表示数据。 JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质上是一个字符串。   JSON的处理器有很多,这里我介绍一下FastJson,FastJson是阿里的开源JSON解析库,可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。是一个极其优秀的Json框架,Github地址: FastJson 1.2.FastJson的特点: 1.FastJson数度快,无论序列化和反序列化,都是当之无愧的fast 2.功能强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum) 3.零依赖(没有依赖其它任何类库) 1.3.FastJson的简单说明: FastJson对于json格式字符串的解析主要用到了下面三个类: 1.JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换 2.JSONObject:fastJson提供的json对象 3.JSONArray

java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean

我的未来我决定 提交于 2019-11-27 07:21:13
一、第一眼看到net.sf.ezmorph.bean.MorphDynaBean这个异常,觉得好生僻。不禁感慨这是什么幺蛾子。后来查了下,简单解释下:是由于需要转换的对象中存在其他对象的引用,并且在转换的时候没有指定对应的类,此时json会使用默认的bean进行动态转换MorphDynaBean,但是在使用的时候就会出现类型转换异常。 二、场景重现 假设有这样一段代码 net.sf.json.JSONArray jsonarray = net.sf.json.JSONArray.fromObject(param.getBody()); List<OuyeelCommissionConfirm> resultList=(List<OuyeelCommissionConfirm>)net.sf.json.JSONArray.toCollection(jsonarray,OuyeelCommissionConfirm.class); if(resultList!=null){ for(OuyeelCommissionConfirm o:resultList){ List<ImageModel> imageList=o.getImageList(); for(ImageModel m:imageList){//标识为特别行 } } } OuyeelCommissionConfirm

net.sf.json------json解析

一世执手 提交于 2019-11-27 05:17:34
下载地址 [plain] view plain copy 本次使用版本:http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-1.1/ 最新版本:http://sourceforge.net/projects/json-lib/files/json-lib/ 使用net.sf.json需要导入的包 JSONObject [java] view plain copy package com.itlwc.test; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class Test { public static void main(String[] args) { // 创建JSONObject JSONObject jsonObject = new JSONObject(); jsonObject.put( "username" , "lwc" ); jsonObject.put( "password" , "123" ); // 打印:1 System.out.println(jsonObject); // 增加属性,打印:2 jsonObject.element( "sex" , "男" ); System.out

RestTemplate的请求参数传递问题

自作多情 提交于 2019-11-27 02:03:13
RestTemplate的请求参数传递问题 问题 使用RestTemplate传递参数的时候,RestTemplate默认传递的是json格式,将参数放在请求体中,这就导致使用@RequestParam接收不到参数.下面测试集中参数传递的方式 测试方法 1.先重现错误,使用RestTemplate传递json,同时使用@RequestParam接收参数. 2.更改RestTemplate参数传递方式,将参数使用占位符在请求行拼接. 3.测试使用@RequestBody接收请求体中的数据(对象/集合/字符串/json数据). 测试 构造几个接口 /** * 测试restTemplate的数组型(List)数据的传递 */ @RestController public class UserController { /** * 接收一个json格式的字符串 数组转换为json字符串传递 */ @RequestMapping(value = "/test01") public String getRest01(@RequestParam("userList")String userList) { //转为list List<User> userList1 = JSONArray.parseArray(userList, User.class); for (User user :

JSON-lib框架,转换JSON、XML不再困难

自闭症网瘾萝莉.ら 提交于 2019-11-27 00:26:40
JSON-lib框架,转换JSON、XML不再困难 Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象。 一、 准备工作 1、 首先要去官方下载json-lib工具包 下载地址: http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/ 目前最新的是2.4的版本,本示例中使用的是v2.3;json-lib还需要以下依赖包: jakarta commons-lang 2.5 jakarta commons-beanutils 1.8.0 jakarta commons-collections 3.2.1 jakarta commons-logging 1.1.1 ezmorph 1.0.6 官方网址: http://json-lib.sourceforge.net/ 然后在工程中添加如下jar包: 当然你也可以用2.4的json-lib库 你可以在这里看看官方提供的示例: http://json-lib.sourceforge.net/usage.html 由于本次介绍的示例需要junit工具,所以你还需要添加junit的jar文件,版本是4.8.2版本的,下载地址:

JSON-lib框架,转换JSON、XML

喜欢而已 提交于 2019-11-27 00:25:30
Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象。 一、 准备工作 1、 首先要去官方下载json-lib工具包 下载地址: http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/ 目前最新的是2.4的版本,本示例中使用的是v2.3;json-lib还需要以下依赖包: jakarta commons-lang 2.5 jakarta commons-beanutils 1.8.0 jakarta commons-collections 3.2.1 jakarta commons-logging 1.1.1 ezmorph 1.0.6 官方网址: http://json-lib.sourceforge.net/ 然后在工程中添加如下jar包: 当然你也可以用2.4的json-lib库 你可以在这里看看官方提供的示例: http://json-lib.sourceforge.net/usage.html 由于本次介绍的示例需要junit工具,所以你还需要添加junit的jar文件,版本是4.8.2版本的,下载地址: https://github.com/KentBeck