我正在開發一個小項目,現在我有一個問題。我需要在我的數據庫中搜索具有相同流派的所有電影。我爲這件事寫了這個函數,但是效果不好。原則上,我希望找到的每個結果都能創建一個名爲Movie的新對象並返回給他。我測試了我的功能,但是我有兩部相同的電影,他只給我一個物體。而我的問題是爲什麼不將所有對象返回給我?他應該歸還我的所有物品。Java JDBC選擇記錄
public Movie extraction(String Genre)throws SQLException{
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from movies where genre='"+Genre+"'");
while(rs.next()){
String name=rs.getString("name");
String genre=rs.getString("genre");
int year=rs.getInt("year");
int metascore=rs.getInt("metascore");
System.out.println(name);
return new Movie(name,genre,year,metascore);
}
return null;
}
您在使用內循環'return',所以它退出在第一iteration.Add你的對象列表,而是和循環後返回列表。 – Berger
幫你一個忙,並瞭解PreparedStatement。你不應該選擇*;拼出你想要的列。 – duffymo