私は少しのプロジェクトに取り組んでいますが、今は問題があります。同じジャンルのすべての映画をデータベースで検索する必要があります。私はこのためにこの関数を書いたが、うまく機能しない。原則として、見つかった各結果に対して、ムービーという名前の新しいオブジェクトを作成して返すことが必要です。私は私の機能をテストしましたが、私は同じ髪型の2枚の映画を持っています。そして私の質問は、なぜ私にすべてのオブジェクトを返さないのですか?彼はすべての私のオブジェクトを返す必要があります。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'を使用していますので、最初の繰り返しで終了します。オブジェクトをリストに追加し、ループの後にリストを返します。 – Berger
あなた自身に恩恵を与え、PreparedStatementについて学んでください。あなたはSELECT *をしてはいけません。あなたが望む列を記入してください。 – duffymo