2

jdbcTemplate を使用する私のコードは次のとおりです

 String SQL = "select branch from branchTable where branch_name = '" + branch + "'";         
           ArrayList<String> branchList = (ArrayList<String>) jdbcTemplateObject.query(SQL, new RowMapper() {
                  public Object mapRow(ResultSet resultSet, int i) throws SQLException {
                    return resultSet.getString("city_desc");
                  }
                });
                       return branchList;

今、私は次のようなクエリでpreparedstatementを使用できるようにしたい"select branch from branchTable where branch_name = ?"

jdbcTemplate でそれを行うにはどうすればよいですか? 私が検索した例では、選択クエリではなく、更新クエリまたは挿入クエリで使用する方法のデモが表示されます..

助けてください。

4

1 に答える 1

2

JdbcTemplate には、準備されたステートメントの引数をパラメーターとして受け取る別の query() メソッドがあります。

jdbcTemplateObject.query(SQL, new Object[] {branchName}, new RowMapper() {...});

ご了承ください:

  • SQL名前を付ける必要がありますsql
  • を使用ListしないでArrayListください。javadoc には、ArrayList が返されることを保証するものは何もありません。また、返されるリストの具体的なタイプを気にする必要はありません。
  • RowMapper<String>raw ではなく aを使用する必要がありますRowMapper
于 2013-10-21T08:56:45.147 に答える