パッケージ 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_MD5
,DBType_NVAR
,DBType_R
,DBType_S9
,DBType_SHA
,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,
-
-
フィールドの概要
フィールド 修飾子とタイプ フィールド 説明 protected static int
BUFFER_MIDDLE
StringBilderなどの初期値を設定します。protected static java.lang.String
CR
システムの改行コードを設定します。
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 AbstractDBType()
デフォルトコンストラクターAbstractDBType(java.lang.String defValue)
コンストラクター 各サブクラスのタイプ値とデフォルト値を設定して、オブジェクトを構築します。
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 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タグかどうかをチェックします。
-
-
-
フィールドの詳細
-
CR
protected static final java.lang.String CR
システムの改行コードを設定します。
-
BUFFER_MIDDLE
protected static final int BUFFER_MIDDLE
StringBilderなどの初期値を設定します。 200- 関連項目:
- 定数フィールド値
-
-
メソッドの詳細
-
getNativeType
public NativeType getNativeType()
NATIVEの型の識別コードを返します。- 定義:
getNativeType
インタフェース内DBType
- 戻り値:
- NATIVEの型の識別コード(DBType で規定)
- 関連項目:
NativeType
- 変更履歴:
- 3.5.4.7 (2004/02/06) 新規作成, 4.1.1.2 (2008/02/28) Enum型(fukurou.model.NativeType)に変更
- このメソッドは、nullを返しません
-
valueFill
public java.lang.String valueFill(java.lang.String value, int sizeX, int sizeY, java.lang.String encode)
半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 なお、エラーチェックは行われません。 実行前に、必ず valueCheck( String value ,int len ) を行う必要があります。
-
getDefault
public java.lang.String getDefault()
そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。 一般に、文字列の場合は,ゼロストリング"" 数字の場合は "0" です。- 定義:
getDefault
インタフェース内DBType
- 戻り値:
- 物理的初期設定値
-
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()) の値を返します。
-
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 ) を無くすことを意味します。
-
valueSet
public java.lang.String valueSet(java.lang.String value)
エディターで編集されたデータを登録する場合に、データそのものを変換して、実登録データを作成します。 例えば,大文字のみのフィールドなら、大文字化します。 実登録データの作成は、DBType オブジェクトを利用しますので, これと CellEditor とがアンマッチの場合は、うまくデータ変換 されない可能性がありますので、注意願います。
-
valueAction
public java.lang.String valueAction(java.lang.String action, java.lang.String oldValue, java.lang.String newValue)
action で指定されたコマンドを実行して、値の変換を行います。 oldValue(旧データ)は、元のDBTableModelに設定されていた値です。通常は、 この値を使用してカラム毎に変換を行います。newValue(新データ)は、引数で 指定された新しい値です。この値には、パラメータを指定して変換方法を 制御することも可能です。 指定のアクションがカラムで処理できない場合は、エラーになります。- 定義:
valueAction
インタフェース内DBType
- パラメータ:
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]をチェックします。 データがエラーの場合は、そのエラー内容を返します。- 定義:
valueCheck
インタフェース内DBType
- パラメータ:
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タグチェックのメソッドの共有化。, 6.2.0.0 (2015/02/27) ERR0010 の引数が、変更されているので、修正します。
-
-