Java 用Json响应中的对象填充JTable
已更新 我在解析以下Json字符串时遇到困难:Java 用Json响应中的对象填充JTable,java,json,swing,jtable,Java,Json,Swing,Jtable,已更新 我在解析以下Json字符串时遇到困难: {"filings":[{"id":"fil_ol1QrN","filing_date":{"year":2019,"month":10,"day":9},"accepted_date":{"dateTime":{"date":{"year":2019,"month":10,"day":9},"time":{"hour":18,"minute":32,"second":27,"nano":0}},"offset":{"totalSeconds":0
{"filings":[{"id":"fil_ol1QrN","filing_date":{"year":2019,"month":10,"day":9},"accepted_date":{"dateTime":{"date":{"year":2019,"month":10,"day":9},"time":{"hour":18,"minute":32,"second":27,"nano":0}},"offset":{"totalSeconds":0}},"period_end_date":{"year":2019,"month":10,"day":7},"report_type":"4","sec_unique_id":"0000320193-19-000109","filing_url":"https://www.sec.gov/Archives/edgar/data/320193/000032019319000109/0000320193-19-000109-index.htm","report_url":"https://www.sec.gov/Archives/edgar/data/320193/000032019319000109/xslF345X03/wf-form4_157066032478147.xml"}],"company":{"id":"com_NX6GzO","ticker":"AAPL","name":"Apple Inc","lei":"HWUPKR0MPOU8FGXBT394","cik":"0000320193"},"next_page":"MjAxOS0xMC0wOXw1Nzc2MDA5"}
这里有人帮我弄到了“id”和“报告类型”,但现在我也想知道提交日期,但不是通常的日期格式。我想用从API响应中获取的对象填充JTable
获得日期的最佳方法是什么?我曾尝试为年、月和日创建getter和setter,但都不起作用,因为这些值是嵌套的,所以我不完全确定如何实现这一点
以下是包装器类:
import java.util.List;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonIgnoreProperties(ignoreUnknown=true)
class Wrapper{
@JsonProperty(value="filings")
List<ExtractSECFilings> filings;
public List<ExtractSECFilings> getFillings() {
return filings;
}
public void setFillings(List<ExtractSECFilings> fillings) {
this.filings = fillings;
}
}
@JsonIgnoreProperties(ignoreUnknown=true)
class ExtractSECFilings {
String id;
String report_type;
String report_url;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getReport_type() {
return report_type;
}
public void setReport_type(String report_type) {
this.report_type = report_type;
}
public String getReport_url(String report_url) {
return report_url;
}
public void setReport_url(String report_url) {
this.report_url = report_url;
}
@Override
public String toString() {
return "ExtractSECFilings [id=" + id + ", report_type=" + report_type + ",
Report url=" + report_url + "]";
}
}
感谢所有能帮我得到申请日期的人
我仍在试图找出如何从提取的对象填充JTable。非常感谢您的帮助。因为“归档日期”是Json响应中的嵌套对象,所以我必须创建一个类来提取年、月和日
private class Filing_date {
int year;
int month;
int day;
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
public int getMonth() {
return month;
}
public void setMonth(int month) {
this.month = month;
}
public int getDay() {
return day;
}
public void setDay(int day) {
this.day = day;
}
}
然后为了查看提取的值,我更新了公共字符串toString(),如下所示:
@Override
public String toString() {
return "[id: " + id + ", report_type: " + report_type + ", Report url: " + report_url + ", Filing Date: " + filing_date.year +"/" + filing_date.month + "/" + filing_date.day + "]";
}
这是一个非常有用的教程,帮助我找到了我想要的,希望这对其他人有帮助
@Override
public String toString() {
return "[id: " + id + ", report_type: " + report_type + ", Report url: " + report_url + ", Filing Date: " + filing_date.year +"/" + filing_date.month + "/" + filing_date.day + "]";
}