org.seasar.doma.jdbc.builder
クラス UpdateBuilder

java.lang.Object
  上位を拡張 org.seasar.doma.jdbc.builder.UpdateBuilder

public class UpdateBuilder
extends Object

UPDATE文を組み立て実行するクラスです。

このクラスはスレッドセーフではありません。

Java
 UpdateBuilder builder = UpdateBuilder.newInstance(config);
 builder.sql("update Emp");
 builder.sql("set");
 builder.sql("name = ").param(String.class, "SMIHT").sql(",");
 builder.sql("salary = ").param(BigDecimal.class, new BigDecimal("1000"));
 builder.sql("where");
 builder.sql("id = ").param(int.class, 1000);
 builder.execute();
 
実行されるSQL
 update Emp
 set
 name = 'SMIHT',
 salary = 1000
 where
 id = 10
 

導入されたバージョン:
1.8.0
作成者:
taedium

メソッドの概要
 void callerClassName(String className)
          呼び出し元のクラス名です。
 void callerMethodName(String methodName)
          呼び出し元のメソッド名です。
 int execute()
          SQLを実行します。
 Sql<?> getSql()
          組み立てられたSQLを返します。
static UpdateBuilder newInstance(Config config)
          ファクトリメソッドです。
<P> UpdateBuilder
param(Class<P> paramClass, P param)
          パラメータを追加します。
 void queryTimeout(int queryTimeout)
          クエリタイムアウト(秒)を設定します。
 UpdateBuilder removeLast()
          最後に追加したSQLもしくはパラメータを削除します。
 UpdateBuilder sql(String sql)
          SQLの断片を追加します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

メソッドの詳細

newInstance

public static UpdateBuilder newInstance(Config config)
ファクトリメソッドです。

パラメータ:
config - 設定
戻り値:
UPDATE文を組み立てるビルダー
例外:
DomaNullPointerException - 引数がnull の場合

sql

public UpdateBuilder sql(String sql)
SQLの断片を追加します。

パラメータ:
sql - SQLの断片
戻り値:
このインスタンス
例外:
DomaNullPointerException - 引数が null の場合

removeLast

public UpdateBuilder removeLast()
最後に追加したSQLもしくはパラメータを削除します。

戻り値:
このインスタンス

param

public <P> UpdateBuilder param(Class<P> paramClass,
                               P param)
パラメータを追加します。

パラメータの型には、基本型とドメインクラスを指定できます。

型パラメータ:
P - パラメータの型
パラメータ:
paramClass - パラメータのクラス
param - パラメータ
戻り値:
このインスタンス
例外:
DomaNullPointerException - parameterClassnull の場合

execute

public int execute()
SQLを実行します。

戻り値:
更新件数
例外:
UniqueConstraintException - 一意制約違反が発生した場合
JdbcException - 上記以外でJDBCに関する例外が発生した場合

queryTimeout

public void queryTimeout(int queryTimeout)
クエリタイムアウト(秒)を設定します。

指定しない場合、 Config.getQueryTimeout() が使用されます。

パラメータ:
queryTimeout - クエリタイムアウト(秒)
関連項目:
Statement.setQueryTimeout(int)

callerClassName

public void callerClassName(String className)
呼び出し元のクラス名です。

指定しない場合このクラスの名前が使用されます。

パラメータ:
className - 呼び出し元のクラス名
例外:
DomaNullPointerException - 引数が null の場合

callerMethodName

public void callerMethodName(String methodName)
呼び出し元のメソッド名です。

指定しない場合このSQLを生成するメソッド(execute()))の名前が使用されます。

パラメータ:
methodName - 呼び出し元のメソッド名
例外:
DomaNullPointerException - 引数が null の場合

getSql

public Sql<?> getSql()
組み立てられたSQLを返します。

戻り値:
組み立てられたSQL


Copyright © 2009-2014 The Seasar Foundation. All Rights Reserved.