javascript
jsonutil java_Java实现的JSONUtil工具类与用法示例
本文實例講述了Java實現的JSONUtil工具類與用法。分享給大家供大家參考,具體如下:
import java.util.HashMap;
import java.util.Map;
import com.alibaba.druid.util.StringUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
public class JSONUtils {
/**
* Bean對象轉JSON
*
* @param object
* @param dataFormatString
* @return
*/
public static String beanToJson(Object object, String dataFormatString) {
if (object != null) {
if (StringUtils.isEmpty(dataFormatString)) {
return JSONObject.toJSONString(object);
}
return JSON.toJSONStringWithDateFormat(object, dataFormatString);
} else {
return null;
}
}
/**
* Bean對象轉JSON
*
* @param object
* @return
*/
public static String beanToJson(Object object) {
if (object != null) {
return JSON.toJSONString(object);
} else {
return null;
}
}
/**
* String轉JSON字符串
*
* @param key
* @param value
* @return
*/
public static String stringToJsonByFastjson(String key, String value) {
if (StringUtils.isEmpty(key) || StringUtils.isEmpty(value)) {
return null;
}
Map map = new HashMap();
map.put(key, value);
return beanToJson(map, null);
}
/**
* 將json字符串轉換成對象
*
* @param json
* @param clazz
* @return
*/
public static Object jsonToBean(String json, Object clazz) {
if (StringUtils.isEmpty(json) || clazz == null) {
return null;
}
return JSON.parseObject(json, clazz.getClass());
}
/**
* json字符串轉map
*
* @param json
* @return
*/
@SuppressWarnings("unchecked")
public static Map jsonToMap(String json) {
if (StringUtils.isEmpty(json)) {
return null;
}
return JSON.parseObject(json, Map.class);
}
}
測試:
JSON字符串轉map
public static void main(String[] args) {
String jsonStr = "{'userName':'huangbaokang','password':'123456'}";
Map map = JSONUtils.jsonToMap(jsonStr);
System.out.println(map.get("userName"));
}
輸出:
huangbaokang
JSON字符串轉對象:
新建User類
public class User {
private String userName;
private String password;
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
public static void main(String[] args) {
String jsonStr = "{'userName':'huangbaokang','password':'123456'}";
User user = (User) JSONUtils.jsonToBean(jsonStr, new User());
System.out.println("用戶名="+user.getUserName()+" 密碼="+user.getPassword());
}
測試輸出:
輸出用戶名=huangbaokang 密碼=123456
對象轉JSON
public static void main(String[] args) {
User user = new User();
user.setUserName("huangbaokang");
user.setPassword("123456");
String result = JSONUtils.beanToJson(user);
System.out.println(result);
}
測試輸出:
{"password":"123456","userName":"huangbaokang"}
在這里工具類應用的jar為阿里巴巴的fastjson,在lib中加入相關jar。
PS:關于json操作,這里再為大家推薦幾款比較實用的json在線工具供大家參考使用:
希望本文所述對大家java程序設計有所幫助。
總結
以上是生活随笔為你收集整理的jsonutil java_Java实现的JSONUtil工具类与用法示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java socket绑定ip_Serv
- 下一篇: java包装器类_Java中的基本类型和