【发布时间】:2017-12-05 10:54:56
【问题描述】:
我有一个 getCourses 的 ArrayList 和一个 ComboBox 的 HashMap:
public class QueryCourses {
public static ArrayList<Courses> getCourses() throws ClassNotFoundException, SQLException {
String queryCourses = "SELECT course_id, course_title FROM tblcourses";
Connection conn = DbConnection.ConnectDB();
Statement stmt = conn.createStatement();
ResultSet rs;
rs = stmt.executeQuery(queryCourses);
ArrayList<Courses> courseList = new ArrayList<>();
while (rs.next()) {
Courses crse = new Courses(rs.getInt("course_id"), rs.getString("course_title"));
courseList.add(crse);
}
return courseList;
}
public HashMap<String, Integer> hashMap(){
HashMap<String, Integer> map = new HashMap<>();
final ComboBox<Courses> cmbCourse = new ComboBox(courseList.getItems());
Connection conn = DbConnection.ConnectDB();
try {
Statement stmt = conn.createStatement();
String qry = "SELECT `course_id`, `course_title` FROM `tblcourses`";
ResultSet rs = stmt.executeQuery(qry);
Courses crse;
while (rs.next()) {
crse = new Courses(rs.getInt(1), rs.getString(2));
cmbCourse.addItem(crse);
}
} catch (SQLException ex) {
Logger.getLogger(NewStudentController.class.getName()).log(Level.SEVERE, null, ex);
}
return map;
}
}
我想将 ArrayList 引用到 ComboBox 的 HashMap 中,其中包含课程的 id 及其标题,但我不知道要引用 getCourses 还是 courseList。其中任何一个都给我一个错误,我错过了什么还是什么?然后这会将标题输出到 ComboBox 上,并可以返回用于数据库插入的键。
【问题讨论】:
-
getCourses 将返回一个 ArrayList,然后您可以从那里获取对象,然后获取其属性。到目前为止你是怎么做到的?