[英]String Object to Json in java
我有一個 Strig 變量。 字符串名稱 = "xyz"; 我想將其轉換為 json object {"name": "xyz"}
我目前正在通過將名稱放入 map 並將 map 轉換為 json 來做到這一點。
Map<String, String > map = new HashMap<>();
map.put("name", name);
new Gson().toJson(map);;
有更好的方法嗎?
您可以使用 com.fasterxml.jackson 中的 ObjectMapper 作為
public static String getString(Object object) {
try {
//Object to JSON in String
return objectMapper.writeValueAsString(object);
} catch (IOException e) {
log.error("Exception ", e);
return "";
}
}
您應該創建一個 Class Name
。 所以它會自動為你創建映射:
示例代碼:
public static void main(String[] args) {
Name name = new Name();
name.setName("xyz");
System.out.println(new Gson().toJson(name));
}
Output: {“名稱”:“xyz”}
名稱 Class:
public class Name {
private String name;
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name
* the name to set
*/
public void setName(String name) {
this.name = name;
}
}
如果您有任何復雜的 JSON object,您應該按照@notescrew 的建議創建一個 POJO 來為您保存它。 如果這是一次性的(例如,在一些返回基本狀態信息的 Web 控制器中)並且您至少在 Java 9 上,您可以通過使用內聯 Z1D78DC8ED51224490AE8B511FE 來簡化它
gson.toJson(Map.of("name", name));
請注意,大多數框架(客戶端和服務器)將為您處理序列化為 JSON,因此在大多數情況下,您可以直接傳遞或返回Map
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.