Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用Json响应中的对象填充JTable_Java_Json_Swing_Jtable - Fatal编程技术网

Java 用Json响应中的对象填充JTable

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

已更新

我在解析以下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}},"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 + "]";
}