我需要將下面的Java類轉換成JSON字符串與不同的屬性名稱:轉換Java對象到JSON請求與別名屬性
public class Company {
private String companyYCode;
private String companyName;
getxx and setxx
}
我需要這是一個JSON字符串
{ 「Y碼」: 「CICPK1214131231」, 「COMPANY_NAME」: 「有些公司」}
我需要將下面的Java類轉換成JSON字符串與不同的屬性名稱:轉換Java對象到JSON請求與別名屬性
public class Company {
private String companyYCode;
private String companyName;
getxx and setxx
}
我需要這是一個JSON字符串
{ 「Y碼」: 「CICPK1214131231」, 「COMPANY_NAME」: 「有些公司」}
是的,我想對你簡單的方法是使用傑克遜庫定製json屬性。 如果你使用Maven的時候,你可以添加到依賴你的pom.xml:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
而在你的模型類,只需使用註釋JsonProperty來配置所需的值:
public class Company {
@JsonProperty ("y-code")
private String companyYCode;
@JsonProperty ("company_name")
private String companyName;
}
隨着該當你分析你的目標公司以JSON,你的JSON字符串將具有的性質你想:
{ 「Y碼」: 「CICPK1214131231」, 「COMPANY_NAME」: 「有些公司」}
謝謝,它工作正常! –
不客氣:) –
@SebastienLe上面的東西並不適用於我。即使我得到相同的值companyName,companyYCode像這樣:{「companyYCode」:「CICPK1214131231」,「companyName」:「Some company」} 。不知道爲什麼會發生這種情況。我添加了2.7.0版本的jackson dependency.Please幫助我擺脫這一點。感謝提前。 – bhadram
你可以寫一個方法
public String toJson() {
JSONObjectBuilder json = new JSONObjectBuilder();
/*
add 'whatever you like - content' here
*/
return json.toString();
}
使用傑克遜庫...
public class Company {
@JsonProperty ("y-code")
private String companyYCode;
@JsonProperty ("company_name")
private String companyName;
getxx and setxx
}
謝謝,它工作正常! –
主類...
import java.io.File;
import java.io.IOException;
import org.elasticsearch.common.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class ObjToJson {
public static void main(String[] args) {
Company user = new Company();
ObjectMapper mapper = new ObjectMapper();
try {
mapper.writeValue(new File("c:\\user.json"), user);
System.out.println(mapper.writeValueAsString(user));
} catch (JsonGenerationException e) {
e.printStackTrace();
} catch (JsonMappingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
POJO:
public class Company {
private String companyYCode="CICPK1214131231";
private String companyName="Some company";
@Override
public String toString() {
return "User [companyYCode=" + companyYCode + ", companyName=" + companyName + "]";
}
public String getCompanyYCode() {
return companyYCode;
}
public void setCompanyYCode(String companyYCode) {
this.companyYCode = companyYCode;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
}
http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/ ..你需要使用Gson庫將obj轉換爲Json .. –