使用gson将json解析为java对象 [英] Using gson to parse json to java object
问题描述
我想将一个json数据解析为一个java对象,然后将其发布到一个.jsp文件中,然后将其重新转换为一个json对象,以便将它放入一个javascript数组中。
以下是我想解析的数据的一个例子:
LoanList= [{Loan :One,Lat:35.65365,Lng:123.1331,Bal:4565,Address:Address 1,Delinquency:True)] $ b
阅读后,我决定使用gson来解析数据:在阅读关于这个主题的其他问题之后,我写了两个班。
class1.java
import java.util.ArrayList;
public class JSON1 {
ArrayList< innerData> Loanlst;
public ArrayList< innerData> getLoanlst(){
return Loanlst;
}
public void setLoanlst(ArrayList< innerData> Loanlst){
this.Loanlst = Loanlst;
}
}
class2.java
import java.math。 *;
public class innerData {
public String loan;
public BigDecimal lat;
public BigDecimal lng;
public BigDecimal bal;
public String addrs;
public String delinq;
public String getLoan(){
return loan;
}
public void setLoan(String loan){
this.loan = loan;
}
public BigDecimal getLat(){
return lat;
}
public void setLat(BigDecimal lat){
this.lat = lat;
}
public BigDecimal getLng(){
return lng;
}
public void setLng(BigDecimal lng){
this.lng = lng;
}
public BigDecimal getBal(){
return bal;
}
public void setBal(BigDecimal bal){
this.bal = bal;
}
public String getAddrs(){
return addrs;
}
public void setAddrs(String addrs){
this.addrs = addrs;
}
public String getDelinq(){
return delinq;
}
public void setDelinq(String delinq){
this.delinq = delinq;
$ / code $ / pre
这里是我卡住的地方,我在哪里创建我的新Gson()解析数据之前,我发送它?
解决方案使用你的类,你应该能够做一些像:
InnerData obj = new InnerData(...); //填入数据
Gson gson = new GSON();
//将java对象转换为JSON格式,
//并返回为JSON格式的字符串
字符串json = gson.toJson(obj);
提示:尝试创建一个主类来运行它分开。
I want to parse a json data into a java object, then post it to a .jsp to then turn it back into a json object so I can put it into a javascript array.
Here is an example of the data I want to parse:
"LoanList" = [ {"Loan" : "One","Lat" : "35.65365", "Lng" : "123.1331" , "Bal" : "4565" , "Address" : "Address 1" , "Delinquency" : "True')]
After reading about it, I decided to use gson to parse the data: After reading other questions about this topic, I wrote two classes.
class1.java
import java.util.ArrayList;
public class JSON1 {
ArrayList<innerData> Loanlst;
public ArrayList<innerData> getLoanlst() {
return Loanlst;
}
public void setLoanlst(ArrayList<innerData> Loanlst) {
this.Loanlst = Loanlst;
}
}
class2.java
import java.math.*;
public class innerData {
public String loan;
public BigDecimal lat;
public BigDecimal lng;
public BigDecimal bal;
public String addrs;
public String delinq;
public String getLoan() {
return loan;
}
public void setLoan(String loan){
this.loan = loan;
}
public BigDecimal getLat() {
return lat;
}
public void setLat(BigDecimal lat){
this.lat = lat;
}
public BigDecimal getLng() {
return lng;
}
public void setLng(BigDecimal lng){
this.lng = lng;
}
public BigDecimal getBal() {
return bal;
}
public void setBal(BigDecimal bal){
this.bal = bal;
}
public String getAddrs() {
return addrs;
}
public void setAddrs(String addrs){
this.addrs = addrs;
}
public String getDelinq() {
return delinq;
}
public void setDelinq(String delinq){
this.delinq = delinq;
}
}
Here is where I am stuck, Where do I create my new Gson() to parse the data before I send it?
解决方案 Using your class you should be able to do something like:
InnerData obj = new InnerData(...);//fill in with data
Gson gson = new Gson();
// convert java object to JSON format,
// and returned as JSON formatted string
String json = gson.toJson(obj);
check an example here and here
Tip: try creating a main class to run it separately.
这篇关于使用gson将json解析为java对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!