SQL RowMapper与对象列表

时间:2016-04-26 17:19:59

标签: java sql

我无法将数据从数据库映射到我的对象。以下是我的对象设置方式。

public class Report{
    private int reportID;
    private String reportName;
    private List<Article> articles = new ArrayList<>();
    // getters and setters
}
public class Article{
    private int articleID;
    private String articleName;
    // getters and setters
}

数据库中的数据采用以下格式:

ReportID  | Report Name  | ArticleID  | ArticleName
-----------------------------------------------------
1           Name1          1            Name1 
1           Name1          2            Name2
1           Name1          3            Name3 
2           Name2          1            Name1 
2           Name2          2            Name2 
3           Name3          1            Name1

可以看出,每份报告都可以有1-n篇文章。这体现在pojo结构中 我的问题是将结果集映射到对象。

我的DAO有以下方法:

public List<Report> getReports(){

    String SQL = "Select * FROM report_table";
    List<Report> reports = jdbcTemplateObject.query(SQL, new RowMapper<Report>(){

        @Override
        public Report mapRow(ResultSet rs, int rowNum) throws SQLException{

            // here I need to return each record
            // but I need to add the articles to the record's list first!
            return null;
        }
    });

    return reports;
}

如何将文章映射到报告?

0 个答案:

没有答案