所以我有这个sql查询:
"select company, surveys.surveyID, questionID, question, questionScore FROM surveys INNER JOIN (SELECT * FROM companies INNER JOIN "
+ "(SELECT * FROM questions INNER JOIN categories "
+ "ON questions.catID = categories.catID) AS cats "
+ "ON companies.questionID = cats.questionID) AS yes "
+ "ON yes.surveyID = surveys.surveyID WHERE company=?"
“猫”和“是”没有任何意义,只是我极其冗长的命名方案的牺牲品。
公司只是一个字符串。
它返回的表如下所示:
---------------------------------------------
|companyName|surveyID|questionID|questionScore|
---------------------------------------------
此表的主键是 (companyName,surveyID AND QuestionID),因为每个公司可以有多个调查,每个调查都有许多问题。
然后我有这个类:
public class Company
{
private String companyName;
private String surveyorName;
private String surveyorTitle;
private int surveyID;
private Map<Integer,Integer> questions;
public Company(String name, String surveyor, String surveyerTitle,
int surveyID, Map<Integer, Integer> questions)
{
this.companyName = name;
this.surveyorName = surveyor;
this.surveyorTitle = surveyerTitle;
this.surveyID = surveyID;
this.questions = questions;
}
拥有所有的 getter 和 setter
例如,假设有一家公司 Mens Insamen。SurveyID 是 1。所以
Mens Insamen 1 q1 3
Mens Insamen 1 q2 1
ETC...
现在我需要使用来自 sql 查询的数据填充公司对象列表。我已经尝试了一段时间,但无法真正想出任何东西。
如果(不出所料)不清楚(fokol(no)咖啡),我可以在某个时候改进它。
提前致谢