导入Apache POI Maven jar包
<!-- SpringBoot 整合 alibabaJSON -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>
编写工具类
import com.alibaba.fastjson.JSONObject;
import org.springframework.util.StringUtils;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
public class JsonUtil {
private JsonUtil(){}
private static JSONObject resultJson = new JSONObject();
private static Map<String, Object> resultMap = new HashMap<>();
public static JSONObject xMLToJSONObject(String xMLString){
xMLString = xMLString.trim();
if (StringUtils.isEmpty(xMLString))
return resultJson;
String[] split = xMLString.split("<");
for (int i = 0; i < split.length-1; i++){
if(i%2 == 1){
String[] split1 = split[i].split(">");
resultJson.put(split1[0], split1[1]);
}
}
return resultJson;
}
public static String jsonObjectToXML(JSONObject jsonObject){
StringBuffer stringBuffer = new StringBuffer("");
Iterator<Map.Entry<String, Object>> iterator = jsonObject.entrySet().iterator();
while (iterator.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)iterator.next();
String key = "<" + entry.getKey().toString() + ">";
stringBuffer.append(key + entry.getValue() + key.replace("<", "</"));
}
return stringBuffer.toString();
}
public static Map<String, Object> jsonObjectToMap(JSONObject jsonObject){
Iterator<Map.Entry<String, Object>> iterator = jsonObject.entrySet().iterator();
while (iterator.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)iterator.next();
resultMap.put(entry.getKey().toString(), entry.getValue());
}
return resultMap;
}
public static Object jsonObjectToBean(String className, JSONObject jsonObject) throws ClassNotFoundException {
return jsonObject.toJavaObject(Class.forName(className));
}
public static JSONObject mapToJSONObject(Map<String, Object> map){
Iterator<Map.Entry<String, Object>> iterator = map.entrySet().iterator();
while (iterator.hasNext()){
java.util.Map.Entry entry = (java.util.Map.Entry)iterator.next();
resultJson.put(entry.getKey().toString(), entry.getValue());
}
return resultJson;
}
public static JSONObject beanToJSONObject(Object object) throws Exception {
Class<?> aClass = object.getClass();
Field[] fields = aClass.getDeclaredFields();
for (Field field : fields) {
String name = field.getName();
Method method = object.getClass().getMethod("get" + getMethodName(field.getName()));
resultJson.put(name, method.invoke(object));
}
return resultJson;
}
private static String getMethodName(String fildeName) throws Exception{
byte[] items = fildeName.getBytes();
items[0] = (byte) ((char) items[0] - 'a' + 'A');
return new String(items);
}
}