もちろん、データベースとドライバーの組み合わせを現在の実装から複数のリクエストをサポートするものに変更すると、(間違いなく)人々が忘れてしまうような休止状態のセキュリティホールがアクティブになります!
悪意のある悪意のあるシナリオを無視すると、上記は引用文字などの通常のデータの挿入で問題が発生します。つまり、上記は単に機能しません 特定のデータセットの場合(クレンジング/エスケープなどを除く)。単に機能的な目的で修正します。
PreparedStatementをご覧ください。 a> 、およびこのためのデータ挿入方法( setString() )など
例:
PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
SET SALARY = ? WHERE ID = ?");
pstmt.setBigDecimal(1, 153833.00)
pstmt.setString(2, "Insert what you like here")
setString()メソッドは、エスケープ/インジェクションの問題なしに任意の文字列をサポートします。