openGionopenGion
5.7.7.0

org.opengion.hayabusa.db
クラス AbstractDBType

java.lang.Object
  上位を拡張 org.opengion.hayabusa.db.AbstractDBType
すべての実装されたインタフェース:
DBType
直系の既知のサブクラス:
DBType_ALL, DBType_CRYPT, DBType_DATE, DBType_DD, DBType_HMS, DBType_K, DBType_KCL, DBType_MD5, DBType_NVAR, DBType_OASNM, DBType_PN, DBType_R, DBType_S9, DBType_X, DBType_X9, DBType_XH, DBType_XHU, DBType_XK, DBType_XKZ, DBType_XL, DBType_XLU9, DBType_XU, DBType_XU9, DBType_YM01, DBType_YM31, DBType_YMD

public abstract class AbstractDBType
extends java.lang.Object
implements DBType

一般的な半角文字列を扱う為の、カラム属性を定義します。 半角文字列とは、「 c < 0x20 || c > 0x7e 以外」でのみ 構成された文字列のことです。 タイプチェックとして、以下の条件を判定します。 ・文字列長は、Byte換算での文字数との比較 ・半角文字列チェック「 c < 0x20 || c > 0x7e 以外」エラー ・文字パラメータの 正規表現チェック ・クロスサイトスクリプティングチェック

機能分類
データ属性
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
 
インタフェース org.opengion.hayabusa.db.DBType から継承されたフィールド
DEF_TYPE
 
コンストラクタの概要
AbstractDBType()
          デフォルトコンストラクター
AbstractDBType(java.lang.String defValue)
          コンストラクター 各サブクラスのタイプ値とデフォルト値を設定して、オブジェクトを構築します。
 
メソッドの概要
 java.lang.String getDefault()
          そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。
 NativeType getNativeType()
          NATIVEの型の識別コードを返します。
 java.lang.String valueAction(java.lang.String action, java.lang.String oldValue, java.lang.String newValue)
          action で指定されたコマンドを実行して、値の変換を行います。
 java.lang.String valueAdd(java.lang.String value)
          String引数の文字列を+1した文字列を返します。
 java.lang.String valueAdd(java.lang.String value, java.lang.String add)
          String引数の文字列に、第2引数に指定の文字列(数字、日付等)を加算して返します。
 ErrorMessage valueCheck(java.lang.String key, java.lang.String value, int sizeX, int sizeY, java.lang.String typeParam, boolean isStrict)
          データが登録可能かどうか[true/false]をチェックします。
 java.lang.String valueFill(java.lang.String value, int sizeX, int sizeY, java.lang.String encode)
          半角スペースで固定長(半角換算の数)に変換した文字列を返します。
 java.lang.String valueSet(java.lang.String value)
          エディターで編集されたデータを登録する場合に、データそのものを変換して、実登録データを作成します。
protected  ErrorMessage xssCheck(java.lang.String key, java.lang.String value, ErrorMessage msg)
          HTMLタグかどうかをチェックします。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

AbstractDBType

public AbstractDBType()
デフォルトコンストラクター

変更履歴:
4.0.0.0 (2005/01/31) type 廃止

AbstractDBType

public AbstractDBType(java.lang.String defValue)
コンストラクター 各サブクラスのタイプ値とデフォルト値を設定して、オブジェクトを構築します。

パラメータ:
defValue - データのデフォルト値
変更履歴:
4.0.0.0 (2005/01/31) type 廃止
メソッドの詳細

getNativeType

public NativeType getNativeType()
NATIVEの型の識別コードを返します。

定義:
インタフェース DBType 内の getNativeType
戻り値:
NATIVEの型の識別コード(DBType で規定)
関連項目:
NativeType
変更履歴:
3.5.4.7 (2004/02/06) 新規作成
4.1.1.2 (2008/02/28) Enum型(fukurou.model.NativeType)に変更

valueFill

public java.lang.String valueFill(java.lang.String value,
                                  int sizeX,
                                  int sizeY,
                                  java.lang.String encode)
半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 なお、エラーチェックは行われません。 実行前に、必ず valueCheck( String value ,int len ) を行う必要があります。

定義:
インタフェース DBType 内の valueFill
パラメータ:
value - FILL埋めする文字列
sizeX - 整数部分の文字列の長さ
sizeY - 少数部分の文字列の長さ
encode - 固定長で変換する文字エンコード
戻り値:
FILL埋めした新しい文字列
変更履歴:
3.5.4.5 (2004/01/23) エンコード指定に変更します。

getDefault

public java.lang.String getDefault()
そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。 一般に、文字列の場合は,ゼロストリング"" 数字の場合は "0" です。

定義:
インタフェース DBType 内の getDefault
戻り値:
物理的初期設定値

valueAdd

public java.lang.String valueAdd(java.lang.String value)
String引数の文字列を+1した文字列を返します。 これは、英字の場合(A,B,C など)は、B,C,D のように,最終桁の文字コードを +1 します。 文字列が数字タイプの場合は, 数字に変換して、+1 します。 最終桁が、"9","z","Z" および、その全角文字の場合、"0","a","Z" および、その全角文字に 変換後、ひとつ上の桁で、同様の +1 操作を行います。 最も上位の桁が、これらの繰り上がり桁の場合は、すべての桁が初期化された状態に戻ります。 例:123 ⇒ 124 , ABC ⇒ ABD , 789 ⇒ 790 , XYZ ⇒ XXZ , ABC123 ⇒ ABC124 , AB99 ⇒ AC00 , 12ZZ99 ⇒ 13AA00 , ZZZZ ⇒ AAAA 引数が null の場合と、ゼロ文字列("")の場合は,物理的初期設定値(String getDefault()) の値を返します。

定義:
インタフェース DBType 内の valueAdd
パラメータ:
value - String引数
戻り値:
引数の文字列を+1した文字列。
変更履歴:
4.0.0.0 (2005/01/31) Addの方法を変更(汎用的なAdd)

valueAdd

public java.lang.String valueAdd(java.lang.String value,
                                 java.lang.String add)
String引数の文字列に、第2引数に指定の文字列(数字、日付等)を加算して返します。 これは、valueAdd( String ) と本質的には同じ動きをしますが、任意の文字列を加算する ため、主として、数字系や日付系の DBType にのみ実装します。 実装がない場合は、UnsupportedOperationException を throw します。 第2引数 が、null の場合は、+1 する valueAdd( String )が呼ばれます。 これは、将来的には、valueAdd( String ) を無くすことを意味します。

定義:
インタフェース DBType 内の valueAdd
パラメータ:
value - String引数
add - 加算する文字列(null の場合は、従来と同じ、+1 します。)
戻り値:
引数の文字列第2引数に指定の文字列(数字、日付等)を加算した文字列。
例外:
java.lang.UnsupportedOperationException - 実装が存在しない場合
変更履歴:
5.6.0.3 (2012/01/24) ADD に、引数の値を加算する機能を追加します。

valueSet

public java.lang.String valueSet(java.lang.String value)
エディターで編集されたデータを登録する場合に、データそのものを変換して、実登録データを作成します。 例えば,大文字のみのフィールドなら、大文字化します。 実登録データの作成は、DBType オブジェクトを利用しますので, これと CellEditor とがアンマッチの場合は、うまくデータ変換 されない可能性がありますので、注意願います。

定義:
インタフェース DBType 内の valueSet
パラメータ:
value - (一般に編集データとして登録されたデータ)
戻り値:
修正後の文字列(一般にデータベースに登録するデータ)
変更履歴:
3.3.3.0 (2003/07/09) 前後のスペースを取り除いておく。
3.3.3.1 (2003/07/18) 後ろスペースを取り除く。(StringUtil#rTrim)

valueAction

public java.lang.String valueAction(java.lang.String action,
                                    java.lang.String oldValue,
                                    java.lang.String newValue)
action で指定されたコマンドを実行して、値の変換を行います。 oldValue(旧データ)は、元のDBTableModelに設定されていた値です。通常は、 この値を使用してカラム毎に変換を行います。newValue(新データ)は、引数で 指定された新しい値です。この値には、パラメータを指定して変換方法を 制御することも可能です。 指定のアクションがカラムで処理できない場合は、エラーになります。

定義:
インタフェース DBType 内の valueAction
パラメータ:
action - アクションコマンド
oldValue - 入力データ(旧データ)
newValue - 入力データ(新データ)
戻り値:
実行後のデータ

valueCheck

public ErrorMessage valueCheck(java.lang.String key,
                               java.lang.String value,
                               int sizeX,
                               int sizeY,
                               java.lang.String typeParam,
                               boolean isStrict)
データが登録可能かどうか[true/false]をチェックします。 データがエラーの場合は、そのエラー内容を返します。

定義:
インタフェース DBType 内の valueCheck
パラメータ:
key - キー
value - 値
sizeX - 整数部分の文字列の長さ
sizeY - 少数部分の文字列の長さ
typeParam - dbType パラメータ
isStrict - 厳密にチェックするかどうか [true:する/false:標準的]
戻り値:
エラー内容
変更履歴:
2.1.1.1 (2002/11/15) HTMLタグチェックのメソッドの共有化。
3.0.1.3 (2003/03/11) DBTypeCheckUtilクラスを利用するように修正
3.6.0.0 (2004/09/22) dbType パラメータを引数に追加
5.2.2.0 (2010/11/01) 厳密にチェック(isStrict=true)するフラグを追加

xssCheck

protected ErrorMessage xssCheck(java.lang.String key,
                                java.lang.String value,
                                ErrorMessage msg)
HTMLタグかどうかをチェックします。 クロスサイトスクリプティング対策として、'<', '>' は登録させない。

パラメータ:
key - タグのキー
value - 対象の値
msg - ErrorMessageオブジェクト
戻り値:
エラー内容(エラーを追加した、ErrorMessageオブジェクト)
変更履歴:
2.1.1.1 (2002/11/15) HTMLタグチェックのメソッドの共有化。

openGion 5.7.7.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.