依赖:
<dependency>
<groupId>org.dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>2.1.1</version>
</dependency>
<!--fastjson-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.3</version>
</dependency>
package com.cosmosource.core.utils;
import com.cosmosource.model.mxgraph.MxGraphXml;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
/**
-
类名称:ModelRunConst
-
类描述:Json转化工具类
-
创建人:
-
创建时间:2019年3月15日
-
修改人:
-
修改时间:2019年3月18日
-
修改备注:增加方法
-
@version 1.0.0
*/
public class JsonUtil {/**
- @return
- @Author
- @Description 对象转Json
- @Date 2019/4/7 14:31
- @Param obj 对象
- @Throws
**/
public static JSONObject objectToJson(Object obj){
JSONObject jsonObject = JSONObject.fromObject(obj);
return jsonObject;
}
/**
- @return
- @Author
- @Description 字符串转Json
- @Date 2019/4/7 14:32
- @Param obj 字符串
- @Throws
**/
public static JSONObject stringToJson(Object obj){
JSONObject jsonObject = JSONObject.fromObject(obj);
return jsonObject;
}
/**
- @return
- @Author
- @Description 对象转数组Json
- @Date 2019/4/7 14:32
- @Param obj 对象
- @Throws
**/
public static JSONArray objectToJsonArray(Object obj){
JSONArray jsonArray = JSONArray.fromObject(obj);
return jsonArray;
}
/**
- @return
- @Author
- @Description Json数组转对象
- @Date 2019/4/7 14:32
- @Param str 字符串
- @Throws
**/
public static Object arrayToJsonToObject(String str){
JSONArray jsonArray = JSONArray.fromObject(str);
Object o = jsonArray.get(0);
return o;
}
/**
- @return
- @Author
- @Description 双引号前加转义字符
- @Date 2019/4/7 14:32
- @Param str 字符串
- @Throws
**/
public static String doubleTOESC(String str){
return str.replace(""","\"");
}
/**
-
@return
-
@Author
-
@Description 提取前台数据中的xml
-
@Date 2019/4/7 14:33
-
@Param str 前台传递的字符串
-
@Throws
**/
public static String mxgroupToString(String str){//将json转为对应的对象
JSONObject jsonObject = JsonUtil.stringToJson(str);
MxGraphXml cx = (MxGraphXml) JSONObject.toBean(jsonObject, MxGraphXml.class);//从对象中获取xml字符串
String graphXml = cx.getGraphXml();//取出最外层的一个标签
String substring = graphXml.substring(graphXml.indexOf(">")+1, graphXml.lastIndexOf(""));return substring;
}
}