JDBC での名前付きパラメータの使用
JDBC には名前付きパラメータのネイティブ サポートがないにもかかわらず、この機能を実現する方法があります。実装方法は次のとおりです。
Spring Framework の JDBC テンプレート
Spring は、名前付きパラメーターを有効にする便利な JDBCTemplate クラスを提供します。これにより、接続管理の煩わしさがなくなり、クエリの実行が簡素化されます。
NamedParameterJdbcTemplate jdbcTemplate = new NamedParameterJdbcTemplate(dataSource); MapSqlParameterSource paramSource = new MapSqlParameterSource(); paramSource.addValue("name", name); paramSource.addValue("city", city); jdbcTemplate.queryForRowSet("SELECT * FROM customers WHERE name = :name AND city = :city", paramSource);
このコードでは、:name と :city は名前付きパラメータを表し、対応する値は MapSqlParameterSource クラスを使用して設定されます。
JDBC-Named-Parameters-Project
こんな方へよりカスタマイズ可能なアプローチを好むため、JDBC-Named-Parameters-Project は、JDBC に名前付きパラメーターのサポートを追加するライブラリを提供します。このライブラリは任意の JDBC ドライバーで使用でき、柔軟なソリューションを提供します。
PreparedStatement stmt = connection.prepareStatement("SELECT * FROM customers WHERE name = ? AND city = ?"); stmt.setString(1, name); stmt.setString(2, city);
この例では、疑問符 (?) は名前付きパラメーターを表し、その値は setString メソッドを使用して設定されます。
名前付きパラメータを使用する利点:
以上がJDBC で名前付きパラメータを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。