json字符串装List<Object>
List<SearchParam> ts = (List<SearchParam>) JSONArray.parseArray(jsonStr, SearchParam.class);
实体
package com.report.pojo;
public class SearchParam {
// "tt": "多选框",
// "tp": "mlt",
// "req": "true",
// "nm": "_20190410104401_004",
// "nickname": "a04",
// "val": "",
// "txt": "",
// "valid": "false"
private String tt;
private String tp;
private String req;
private String nm;
private String nickname;
private String val;
private String txt;
private String valid;
public String getTt() {
return tt;
}
public void setTt(String tt) {
this.tt = tt;
}
public String getTp() {
return tp;
}
public void setTp(String tp) {
this.tp = tp;
}
public String getReq() {
return req;
}
public void setReq(String req) {
this.req = req;
}
public String getNm() {
return nm;
}
public void setNm(String nm) {
this.nm = nm;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getVal() {
return val;
}
public void setVal(String val) {
this.val = val;
}
public String getTxt() {
return txt;
}
public void setTxt(String txt) {
this.txt = txt;
}
public String getValid() {
return valid;
}
public void setValid(String valid) {
this.valid = valid;
}
@Override
public String toString() {
return "SearchParam [tt=" + tt + ", tp=" + tp + ", req=" + req
+ ", nm=" + nm + ", nickname=" + nickname + ", val=" + val
+ ", txt=" + txt + ", valid=" + valid + "]";
}
}
测试
package test; import java.util.HashMap;
import java.util.List;
import java.util.Map; import com.alibaba.fastjson.JSONArray;
import com.report.pojo.SearchParam; public class Test { public static void main(String[] args) {
String jsonStr = "[{'tt':'文本框','tp':'txt','req':'true','nm':'_20190410104401_001','val':'111','txt':'111','nickname':'a01','valid':'true'},{'tt':'下拉框','tp':'sel','req':'true','nm':'_20190410104401_002','val':'201','txt':'单选1','nickname':'a02','valid':'true'},{'tt':'日期框','tp':'dat','req':'true','nm':'_20190410104401_003','val':'2019-04-11 17:40:35','txt':'2019-04-11 17:40:35','nickname':'a03','valid':'true'},{'tt':'多选框','tp':'mlt','req':'true','nm':'_20190410104401_004','nickname':'a04','val':'401|402|403','txt':'多选1|多选2|多选3','valid':'true'},{'tt':'文本框','tp':'txt','req':'false','nm':'_20190410104401_005','val':'www','txt':'www','nickname':'b01','valid':'true'},{'tt':'下拉框','tp':'sel','req':'false','nm':'_20190410104401_006','val':'201','txt':'单选1','nickname':'b02','valid':'true'},{'tt':'日期框','tp':'dat','req':'false','nm':'_20190410104401_007','val':'2019-04-11 17:40:38','txt':'2019-04-11 17:40:38','nickname':'b03','valid':'true'},{'tt':'多选框','tp':'mlt','req':'false','nm':'_20190410104401_008','nickname':'b04','val':'401|402|403','txt':'多选1|多选2|多选3','valid':'true'}]";
// String jsonStr = "[{'tt':'文本框','tp':'txt','req':'true','nm':'_20190410104401_001','val':'111','txt':'111','nickname':'a01','valid':'true'},{'tt':'下拉框','tp':'sel','req':'true','nm':'_20190410104401_002','val':'201','txt':'单选1','nickname':'a02','valid':'true'},{'tt':'日期框','tp':'dat','req':'true','nm':'_20190410104401_003','val':'2019-04-17 14:11:54','txt':'2019-04-17 14:11:54','nickname':'a03','valid':'true'},{'tt':'多选框','tp':'mlt','req':'true','nm':'_20190410104401_004','nickname':'a04','val':'','txt':'','valid':'false'},{'tt':'文本框','tp':'txt','req':'false','nm':'_20190410104401_005','val':'','txt':'','nickname':'b01','valid':'true'},{'tt':'下拉框','tp':'sel','req':'false','nm':'_20190410104401_006','val':'-1','txt':'未选择','nickname':'b02','valid':'true'},{'tt':'日期框','tp':'dat','req':'false','nm':'_20190410104401_007','val':'','txt':'','nickname':'b03','valid':'true'},{'tt':'多选框','tp':'mlt','req':'false','nm':'_20190410104401_008','nickname':'b04','val':'','txt':'','valid':'true'}]"; // JSONObject jsonObject = JSONObject.toJavaObject(jsonStr);
//
// SearchParam grades = (SearchParam) JSONObject.toBean(jsonObject, SearchParam.class);
Map<String, Object> map = new HashMap<String, Object>();
List<SearchParam> ts = (List<SearchParam>) JSONArray.parseArray(jsonStr, SearchParam.class);
for (SearchParam one : ts) {
System.out.println(one);
String tp = one.getTp();
String nickname = one.getNickname();
String txt = one.getTxt();
String val = one.getVal();
if("mlt".equalsIgnoreCase(tp)){
val = val.replace("|", ";");
StringBuffer sb = new StringBuffer();
sb.append("(");
String[] split = val.split(";");
for (String string : split) {
sb.append("'"+string+"',");
}
val = sb.toString();
val = sb.substring(0,sb.length()-1)+")";
}
map.put(nickname, val);
}
System.out.println(map);
for (String str :map.keySet()) {
System.out.println(str+"---"+map.get(str));
}
}
}
json字符串装List<Object>的更多相关文章
- JAVA中使用alibaba fastjson实现JSONObject、Object、Json字符串的转换
JAVA中使用alibaba fastjson实现JSONObject.Object.Json字符串的转换 Object转JSON字符串:String jsonStr = JSONObject.toJ ...
- Java——Json字符串与Object互转
public static void JacksonTest() {//推荐 //{"MNG001":[{"ID":"1","PW ...
- Jackson实现Object对象与Json字符串的互转
在项目开发过程中,当客户端与服务器响应时,数据交互是必不可少的.然而通过Json实现数据交互成为我们开发中的一部分,进而Jackson为我们的Json转化提供了很好的机制.下面我将利用实例总结如何使用 ...
- fastjson 将json字符串转化成List<Map<String, Object>>
亲测可行,如下: JSON.parseObject(jsonstr, new TypeReference<List<Map<String, Object>>>() ...
- json字符串和object之间的相互转化
package asi; import java.util.ArrayList; import com.alibaba.fastjson.JSON; import com.alibaba.fastjs ...
- C#-使用Newtonsoft.Json实现json字符串与object对象互转
json字符串转object对象: IF004Response processResponse = JsonConvert.DeserializeObject<IF004Response> ...
- json 字符串包含数组转换为object对象是报异常java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to
前台传到后台的json字符串 前台实现这种格式json字符串方式: function contentFun(){ respType = respTypeFun(); return "{\&q ...
- 关于Json字符串"反序列化Error reading JObject from JsonReader. Current JsonReader item is not an object: StartArray. Path..."
描述的很清楚就是说给它的不是一个对象,而是一个数组,所以他在建议你用JArray去解析,但是你明明就是给它的一个对象,并不是一个数组 这是我下意识的去把我的json字符串中的"[ ]&quo ...
- json对象和json字符串有啥区别啊
json对象可以通过javascript存取属性!json对象装成json字符串经常用于前后台传输数据! 如果你在前台使用,那么Json对象可以通过xx.name来调用,如果是字符串,那么就是字符串了 ...
随机推荐
- python基础——元组
元组运算符 与字符串一样,元组之间可以使用 + 号和 * 号进行运算.这就意味着他们可以组合和复制,运算后会生成一个新的元组. Python 表达式 结果 描述 len((1, 2, 3)) 3 计算 ...
- [Spring Boot]什么是Spring Boot
<Spring Boot是什么> Spring Boot不是一个框架 是一种用来轻松创建具有最小或零配置的独立应用程序的方式 用来开发基于Spring的应用,但只需非常少的配置. 它提供了 ...
- mysql慢查询----pt-query-digest详解慢查询日志(linux系统)
一.简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog.General log.slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdu ...
- 虚拟机U盘挂载
虚拟机中U盘挂载 一.连接U盘 虚拟机中 虚拟机→可移动设备→Syntek USB......(U盘的名称)→连接: 二.查看U盘的UUID “lsblk -f”: UUID为 35E6-9 ...
- 对Enum的认识
1.如何把枚举值取出来作为数据源: public enum AuditState { 未审核 = 1, 审核通过=2, 审核未通过=3, ...
- XXS level7
(1)输入与第六关相同的Payload:"><A HREF="javascript:alert()"> 查看页面源代码,发现“herf"被过滤 ...
- 《从Lucene到Elasticsearch:全文检索实战》学习笔记二
今天我给大家讲讲分词算法 分词算法概述:词是语义的最小单位.分词对搜索引擎的作用很大,可以促进搜索引擎程序自动识别语句的含义,可以提高搜索结果的匹配度,分析的质量也将直接影响了搜索结果的精确度.分词存 ...
- jsp/servlet环境搭建
手动配置servlet开发环境: 1. eclipse.tomcat.jdk下载安装: 2. eclipse新建项目,项目依赖tomcat的jar包(包含tomcat和servlet相关jar包)以及 ...
- 在html中做表格以及给表格设置高宽字体居中和表格线的粗细
今天学习了如何用HTML在网页上做表格,对于我这种横列部分的属实有点麻烦,不过在看着表格合并单过格的时候我把整个表格看做代码就容易多了. 对于今天的作业让我学习了更多的代码,对于代码的应用希望更加熟练 ...
- 1.1.25 word图片批量对齐
1.打开文件,点击[开始]>[编辑]>[替换](或ctrl+h)> \ 在[查找内容]输入^g>定位到[替换为]>[格式]>[段落]>[对齐方式|居中]> ...