|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.ObjectJdbcDaoSupport
jp.terasoluna.fw.message.DBMessageResourceDAOImpl
public class DBMessageResourceDAOImpl
DBからメッセージリソースを取得するDBMessageResourceDAOの実装クラス。
本クラスは、メッセージリソースを格納したDBから検索SQL文を使用し、
メッセージリソースをDBMessageオブジェクトのリストとしてまとめ、返却する。
使用方法
このクラスを使用するにはアプリケーションコンテキスト起動時にDAOとして
認識させる必要がある。
設定例
DAOの実装クラスとして本クラスを使用する場合、Bean定義ファイルに
以下の記述をする。
<bean id = "dBMessageResourceDAO"
class = "jp.terasoluna.fw.message.DBMessageResourceDAOImpl">
<property name = "dataSource">
<ref bean = "dataSource"></ref>
</property>
</bean>
解説SELECT CODE,MESSAGE FROM MESSAGESである。 デフォルトの検索SQL文を使用する場合、DBのカラム名は以下の通りとなる。
SELECT メッセージコードのカラム名 , 言語コードのカラム名 , 国コードのカラム名, バリアントコードのカラム名 ,メッセージ本体のカラム名 FROM テーブル名テーブル名及び各カラム名の全てもしくは一部を指定することでDBのテーブル名及び カラム名を自由に設定出来る。一部の値のみを指定した場合、指定されていない値は 上記デフォルトの検索SQL文の値が使用される。
<bean id = "DBMessageResourceDAO"
class = "jp.terasoluna.fw.message.DBMessageResourceDAOImpl">
<ref bean = "dataSource"></ref>
</property>
<property name = "tableName">
<value>DBMESSAGES</value>
</property>
<property name = "codeColumn">
<value>BANGOU</value>
</property>
<property name = "languageColumn">
<value>GENGO</value>
</property>
<property name = "countryColumn">
<value>KUNI</value>
</property>
<property name = "variantColumn">
<value>HOUGEN</value>
</property>
<property name = "messageColumn">
<value>MESSAGE</value>
</property>
</bean>
<bean>要素内<properities>要素のname属性に変更したいテーブル名や
カラム名を指定し、value属性にて設定したい値を指定する。SELECT BANGOU,GENGO,KUNI,HOUGEN,HONBUN FROM DBMESSAGESとなる。
<bean id = "DBMessageResourceDAO"
class = "jp.terasoluna.fw.message.DBMessageResourceDAOImpl">
<property name = "dataSource">
<ref bean = "dataSource"></ref>
</property>
<property name = "findMessageSql">
<value>
SELECT BANGOU as CODE,HONBUN as MESSAGE FROM DBDATA WHERE CATEGORY = "DBMESSAGE"
</value>
</property>
</bean>
<bean>要素内<properities>要素のname属性に検索SQL文と使用する
カラム名を指定し、value属性にて設定したいSQL文を指定する。SELECT BANGOU as CODE,HONBUN as MESSAGE FROM DBDATA WHERE CATEGORY = "DBMESSAGE"となる。
DataSourceMessageSource,
DBMessage,
DBMessageQuery,
DBMessageResourceDAO| フィールドの概要 | |
|---|---|
protected java.lang.String |
codeColumn
メッセージコードを格納するDBのカラム名。 |
protected java.lang.String |
countryColumn
国コードを格納するDBのカラム名。 |
protected DBMessageQuery |
dBMessageQuery
メッセージリソースを取得するRDBMSオペレーションクラス。 |
protected java.lang.String |
findMessageSql
外部から設定されるDB検索時に使用されるSQL文。 |
protected java.lang.String |
languageColumn
言語コードを格納するDBのカラム名。 |
private static Log |
log
ログクラス。 |
protected java.lang.String |
messageColumn
メッセージを格納するDBのカラム名。 |
protected java.lang.String |
tableName
メッセージを格納するDBのテーブル名。 |
protected java.lang.String |
variantColumn
バリアントコードを格納するDBのカラム名。 |
| コンストラクタの概要 | |
|---|---|
protected |
DBMessageResourceDAOImpl()
DBMessageResourceDAOImplを生成する。 |
| メソッドの概要 | |
|---|---|
protected void |
checkNotRequiredColumnName(java.lang.String value,
java.lang.String columnName)
必須カラム以外のカラム名をチェックする。 |
protected void |
checkRequiredColumnName(java.lang.String value,
java.lang.String columnName)
必須カラムのカラム名及びテーブル名をチェックする。 |
java.util.List<DBMessage> |
findDBMessages()
DBから取得したメッセージリソースをDBMessageオブジェクトに格納し、リスト型 で返却する。 |
protected void |
initDao()
DBよりメッセージリソースを取得するDBMessageQueryを生成する。 |
protected java.lang.String |
makeSql()
DBからメッセージリソースを取得するSQL文を生成する。 |
void |
setCodeColumn(java.lang.String codeColumn)
メッセージコードを格納するDBのカラム名を設定する。 |
void |
setCountryColumn(java.lang.String countryColumn)
国コードを格納するDBのカラム名を設定する。 |
void |
setFindMessageSql(java.lang.String findMessageSql)
DBからメッセージリソースを検索するSQL文を設定する。 |
void |
setLanguageColumn(java.lang.String languageColumn)
言語コードを格納するDBのカラム名を設定する。 |
void |
setMessageColumn(java.lang.String messageColumn)
メッセージを格納するDBのカラム名を設定する。 |
void |
setTableName(java.lang.String tableName)
メッセージを格納するDBのテーブル名を設定する。 |
void |
setVariantColumn(java.lang.String variantColumn)
バリアントコードを格納するDBのカラム名を設定する。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
protected java.lang.String tableName
protected java.lang.String codeColumn
protected java.lang.String languageColumn
protected java.lang.String countryColumn
protected java.lang.String variantColumn
protected java.lang.String messageColumn
protected java.lang.String findMessageSql
private static Log log
protected DBMessageQuery dBMessageQuery
| コンストラクタの詳細 |
|---|
protected DBMessageResourceDAOImpl()
| メソッドの詳細 |
|---|
public void setTableName(java.lang.String tableName)
tableName - メッセージを格納したDBのテーブル名。public void setCodeColumn(java.lang.String codeColumn)
codeColumn - メッセージコードを格納したDBのカラム名。public void setLanguageColumn(java.lang.String languageColumn)
languageColumn - 言語コードを格納したDBのカラム名。public void setCountryColumn(java.lang.String countryColumn)
countryColumn - 国コードを格納したDBのカラム名。public void setVariantColumn(java.lang.String variantColumn)
variantColumn - バリアントコードを格納したDBのカラム名。public void setMessageColumn(java.lang.String messageColumn)
messageColumn - メッセージを格納したDBのカラム名。public void setFindMessageSql(java.lang.String findMessageSql)
findMessageSql - 外部から設定されるDB検索時に使用されるSQL文。protected void initDao()
java.lang.IllegalArgumentException - DBとの接続が取得できなかった場合public java.util.List<DBMessage> findDBMessages()
DBMessageResourceDAO 内の findDBMessagesprotected java.lang.String makeSql()
protected void checkRequiredColumnName(java.lang.String value,
java.lang.String columnName)
value - DBでのカラム名もしくはテーブル名columnName - 検査対象のカラムもしくはテーブル
protected void checkNotRequiredColumnName(java.lang.String value,
java.lang.String columnName)
value - DBでのカラム名columnName - 検査対象のカラム
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||