目次へ

5.5. JdbcTemplate#update()

前節までで DBMS の基本機能である CRUD (Create, Read, Update, Delete) の R が一通り終わりました。データベースを扱うには残りの Create, Update, Delete ができなければいけません。JdbcTemplate を用いて CUD の操作を行うには update() メソッドを使用します。 update() メソッドも引数の異なるものが合計 7つ用意されていますが、ここでは以下のシグニチャを持つ 3つを説明します。

int update(String sql)
int update(String sql, Object[] args)
int update(String sql, Object[] args, int[] argTypes)

上の 2つは queryForInt() と同様です。最後のメソッドの 3番目の引数 argTypes には 2番目の引数で渡すデータの型を示す値の配列を渡します。データ型を示す値には java.sql.Types で定義されている定数フィールド値を使用します。 update() メソッドはたとえば以下のように使用します。

public class PersonDao {
    private DataSource dataSource = null;

    public void insert(Person person) {
        final String sql = "insert into person(first_name, family_name) values(?, ?)";
        JdbcTemplate jt = new JdbcTemplate(this.dataSource);
        jt.update(sql, new Object[]{person.getFirstName(),
                                    person.getFamilyName()});
    }

    public void setDataSource(DataSource dataSource) {
        this.dataSource = dataSource;
    }
}

実習課題 2

Spring を使用して以下の要件を満たすコンソールアプリケーションを作成しなさい。

  • 任意のテーブルに任意のデータを挿入すること
  • 使用するテーブルは少なくとも 3種類の異なるデータ型のカラムをもつこと

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp
  • シナジーマーケティング研究開発グループブログ