nga.sql
インタフェース Selecter<R>


public interface Selecter<R>

Select 文用 SQL オブジェクト。

関連項目:
SQL.createSelecter(Connection, Class, String), SQL.createSelecter(Connection, Class, String, Object[])

メソッドの概要
 Selecter<R> add(String text)
          現在の SQL 文の末尾に文字列を追加する。
 Selecter<R> add(String text, String connector)
          現在の SQL 文の末尾に connector 引数で指定された結合文字列と text 引数で指定された文字列を追加する。
 Selecter<R> add(String text, String connector, String ifEmpty)
          現在の SQL 文の末尾に connector 引数で指定された結合文字列と text 引数で指定された文字列を追加する。
 Selecter<R> and(String text)
          現在の SQL 文の末尾に「"AND " + 指定した文字列」を追加する。
 Selecter<R> and(String text, String ifEmpty)
          現在の SQL 文の末尾に「"AND " + 指定した文字列」を追加する。
 void close()
          getResultSet() メソッドで取得した ResultSet および Statement をクローズする。
 int count()
          指定した SELECT 文を「SELECT COUNT(*) ~」に変換して実行し, その件数を取得する。
 List<R> find()
          SELECT 文を実行し,指定されたクラスのインスタンスをリストに格納して返す。
 List<R> find(List<R> list)
          SELECT 文を実行し,指定されたリストに格納して返す。
 R find(R object)
          SELECT 文を実行し,指定されたオブジェクトに格納して返す。
 int getMaxRows()
          検索結果の最大行数を取得する。
 int getQueryTimeout()
          クエリーのタイムアウト時間(秒)を取得する。
 R getResultObject(ResultSet rs, R result)
          ResultSet の内容を結果オブジェクトに格納する。
 ResultSet getResultSet()
          SELECT 文を実行して得た ResultSet をそのまま取得する。
 boolean isExceeded()
          setMaxRows(int) で設定した行数を超えた行が検索された場合は ture を返す。
 Selecter<R> or(String text)
          現在の SQL 文の末尾に「"OR " + 指定した文字列」を追加する。
 Selecter<R> or(String text, String ifEmpty)
          現在の SQL 文の末尾に「"OR " + 指定した文字列」を追加する。
 void setLog(Log log)
          ログを設定する。
 void setMaxRows(int maxRows)
          検索結果の最大行数をセットする。
 void setQueryTimeout(int queryTimeout)
          クエリーのタイムアウト時間(秒)をセットする。
 

メソッドの詳細

setLog

void setLog(Log log)
ログを設定する。

パラメータ:
log - ログ。

getQueryTimeout

int getQueryTimeout()
クエリーのタイムアウト時間(秒)を取得する。

戻り値:
クエリーのタイムアウト時間(秒)。

setQueryTimeout

void setQueryTimeout(int queryTimeout)
クエリーのタイムアウト時間(秒)をセットする。

パラメータ:
queryTimeout - クエリーのタイムアウト時間(秒)。

add

Selecter<R> add(String text)
現在の SQL 文の末尾に文字列を追加する。

パラメータ:
text - SQL 文の末尾に追加する文字列。
戻り値:
現在の Selecter インスタンス。

add

Selecter<R> add(String text,
                String connector)
現在の SQL 文の末尾に connector 引数で指定された結合文字列と text 引数で指定された文字列を追加する。 但し,@..@ で指定されたパラメタが null または長さゼロの文字列だった場合, このメソッドは何も行なわない。 また,現在の SQL 文の末尾の文字が '(' だった場合は区切り文字は追加せず,指定された文字列のみを追加する。

パラメータ:
text - SQL 文の末尾に追加する文字列。
connector - 結合文字列。
戻り値:
現在の Selecter インスタンス。

add

Selecter<R> add(String text,
                String connector,
                String ifEmpty)
現在の SQL 文の末尾に connector 引数で指定された結合文字列と text 引数で指定された文字列を追加する。 但し,text 引数の中で,@..@ で指定されたパラメタが null または長さゼロの文字列だった場合, ifEmpty 引数の文字列を追加する。 また,現在の SQL 文の末尾の文字が '(' だった場合は区切り文字は追加せず,指定された文字列のみを追加する。

パラメータ:
text - SQL 文の末尾に追加する文字列。
ifEmpty - text 引数の中で,@..@ で指定されたパラメタが null または長さゼロの文字列 だった場合に追加する文字列。
戻り値:
現在の Selecter インスタンス。

and

Selecter<R> and(String text)
現在の SQL 文の末尾に「"AND " + 指定した文字列」を追加する。
なお,現在の SQL 文中にまだ "WHERE" 文字列が存在しない場合は,「"WHERE " + 指定した文字列」を追加する。 また,現在の SQL 文の末尾の文字が '(' だった場合は,"AND" は追加せず,指定された文字列のみを追加する。 但し,@..@ で指定されたパラメタが null または長さゼロの文字列だった場合, このメソッドは何も行なわない。

パラメータ:
text - SQL 文の末尾に追加する文字列。
戻り値:
現在の Selecter インスタンス。

and

Selecter<R> and(String text,
                String ifEmpty)
現在の SQL 文の末尾に「"AND " + 指定した文字列」を追加する。
なお,現在の SQL 文中にまだ "WHERE" 文字列が存在しない場合は,「"WHERE " + 指定した文字列」を追加する。 また,現在の SQL 文の末尾の文字が '(' だった場合は,"AND" は追加せず,指定された文字列のみを追加する。 但し,text 引数の中で,@..@ で指定されたパラメタが null または長さゼロの文字列だった場合, ifEmpty 引数の文字列を追加する。 このメソッドは何も行なわない。

パラメータ:
text - SQL 文の末尾に追加する文字列。
戻り値:
現在の Selecter インスタンス。

or

Selecter<R> or(String text)
現在の SQL 文の末尾に「"OR " + 指定した文字列」を追加する。
なお,現在の SQL 文中にまだ "WHERE" 文字列が存在しない場合は,「"WHERE " + 指定した文字列」を追加する。 また,現在の SQL 文の末尾の文字が '(' だった場合は,"OR" は追加せず,指定された文字列のみを追加する。 但し,@..@ で指定されたパラメタが null または長さゼロの文字列だった場合, このメソッドは何も行なわない。

パラメータ:
text - SQL 文の末尾に追加する文字列。
戻り値:
現在の Selecter インスタンス。

or

Selecter<R> or(String text,
               String ifEmpty)
現在の SQL 文の末尾に「"OR " + 指定した文字列」を追加する。
なお,現在の SQL 文中にまだ "WHERE" 文字列が存在しない場合は,「"WHERE " + 指定した文字列」を追加する。 また,現在の SQL 文の末尾の文字が '(' だった場合は,"OR" は追加せず,指定された文字列のみを追加する。 但し,text 引数の中で,@..@ で指定されたパラメタが null または長さゼロの文字列だった場合, ifEmpty 引数の文字列を追加する。

パラメータ:
text - SQL 文の末尾に追加する文字列。
戻り値:
現在の Selecter インスタンス。

find

List<R> find()
             throws SQLException
SELECT 文を実行し,指定されたクラスのインスタンスをリストに格納して返す。

戻り値:
SQL実行結果を格納したリスト。検索結果が 0 件の場合は,要素数 0 のリストとなる。
例外:
SQLException

find

List<R> find(List<R> list)
             throws SQLException
SELECT 文を実行し,指定されたリストに格納して返す。

パラメータ:
list - 検索結果の格納先リスト。
戻り値:
引数 list と同一のインスタンス。
例外:
SQLException

find

R find(R object)
       throws SQLException
SELECT 文を実行し,指定されたオブジェクトに格納して返す。 検索結果が 2 件以上あった場合は,1 件目のみ指定されたオブジェクトに格納する。 この際,isExceeded() を呼び出すと,true を返す。

戻り値:
引数 object と同一のインスタンス。但し,検索結果が 0 件の場合は,null。
例外:
SQLException

count

int count()
          throws SQLException
指定した SELECT 文を「SELECT COUNT(*) ~」に変換して実行し, その件数を取得する。

戻り値:
実行結果件数。
例外:
SQLException

getResultSet

ResultSet getResultSet()
                       throws SQLException
SELECT 文を実行して得た ResultSet をそのまま取得する。 このメソッドで取得した ResultSet は close() メソッドでクローズする必要がある。

戻り値:
ResultSet。
例外:
SQLException

close

void close()
getResultSet() メソッドで取得した ResultSet および Statement をクローズする。


isExceeded

boolean isExceeded()
setMaxRows(int) で設定した行数を超えた行が検索された場合は ture を返す。 find(java.lang.Object) が 2 件以上の結果を返した場合は true を返す。

戻り値:
setMaxRows(int) で設定した行数を超えた行が検索された場合は ture。

getMaxRows

int getMaxRows()
検索結果の最大行数を取得する。

戻り値:
検索結果の最大行数。
関連項目:
isExceeded()

setMaxRows

void setMaxRows(int maxRows)
検索結果の最大行数をセットする。

パラメータ:
maxRows - 検索結果の最大行数。
関連項目:
isExceeded()

getResultObject

R getResultObject(ResultSet rs,
                  R result)
                  throws SQLException
ResultSet の内容を結果オブジェクトに格納する。

パラメータ:
rs - ResultSet
result - 格納先結果オブジェクト。
戻り値:
格納された結果オブジェクト。
例外:
SQLException