こんにちは、2 つの文字列リストから共通の値を取得しようとしています... リスト A には Excel データベースにクエリを実行して取得した値があり、リスト B には SQL データベースにクエリを実行して取得した値があります。A と B の共通の値が必要です。そのために、retainAll コレクションを使用しました。しかし、それは共通の値を出力していません.代わりに私に[]を与えています. この問題を解決するのを手伝ってください。keepAll を使用する以外の一般的な値を取得する方法。私のコードスニペットを修正してください。
//connecting excel database and storing its values
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection("jdbc:odbc:spreadsheetdb","","");
out.println("Excel Database connected" +"<br>");
Statement stmt=conn.createStatement();
String excelquery="Select * from [Sheet1$]";
ResultSet excelvalues= stmt.executeQuery(excelquery);
List A= new ArrayList();
while(excelvalues.next()){
A.add(excelvalues.getString("name"));}
//connection sql Db and storing its values
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
connection = DriverManager.getConnection("jdbc:odbc:copyknowledgebase","sa","sqladmin");
out.println("<br>"+"MSSQL connected " +"<br>")
Statement statement=connection.createStatement();
String conceptquery="Select * from dbo.conc";
ResultSet conceptdetails=statement.executeQuery(conceptquery);
Timestamp ts = new Timestamp(new java.util.Date().getTime());
List B = new ArrayList();
while(conceptdetails.next()){
B.add(conceptdetails.getString("Cname"));
}
B.retainAll (A);
out.println(B);