JavaでログインUIを構築しようとしています。しかし、私のSQL認証JavaでのSQL認証によるログイン
の問題は、ここでは、コードがありますされています
public void actionPerformed(ActionEvent e){
if (e.getSource() == Login)
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:MessageStore","sa","12345");
Statement cmd=con.createStatement();
ResultSet rs=cmd.executeQuery("select * from UserList where UserName='"+nameText.getText());
}
しかし、「RS」との警告があります: ローカル変数rsの値は
どのように使用されていませんこの問題を解決するために?
また、SQL認証を実装するためのより簡単なコードがありますか?
は、メッセージを無視するか、それに割り当てを削除するかを選択することができ、「変数Xの値が使用されていない」のほとんどのケースでは、あなたに
データベース値がResultSetから取得することができますが、それを反復処理する必要があります。 –
これはSQLインジェクションにはオープンです。文字列をエスケープするか、またはプリペアドステートメントを使用する必要があります。また、あなたはrsを使用していないので、警告が発生しています。 rsを使用しない場合は、rsに戻り値を割り当てないでください。ただし、行が存在するかどうかを確認するために、またはパスワードが正しいかどうかを確認するために使用する必要があるため、使用する必要があります。また、人々がSQLサーバーに直接接続できるようにすることについては注意が必要です。あなたがそうすることを期待していない人があなたのアプリケーションの外でそれに接続すると、それはセキュリティ上の問題となります。 – Corbin