パッケージ 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 Object implements DBType
一般的な半角文字列を扱う為の、カラム属性を定義します。 半角文字列とは、「 c < 0x20 || c > 0x7e 以外」でのみ 構成された文字列のことです。 タイプチェックとして、以下の条件を判定します。 ・文字列長は、Byte換算での文字数との比較 ・半角文字列チェック「 c < 0x20 || c > 0x7e 以外」エラー ・文字パラメータの 正規表現チェック ・クロスサイトスクリプティングチェック- 機能分類
- データ属性
- バージョン
- 4.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
-
-
フィールドの概要
フィールド 修飾子とタイプ フィールド 説明 protected static intBUFFER_MIDDLEStringBilderなどの初期値を設定します。protected static StringCRシステムの改行コードを設定します。
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 AbstractDBType()デフォルトコンストラクターAbstractDBType(String defValue)コンストラクター 各サブクラスのタイプ値とデフォルト値を設定して、オブジェクトを構築します。
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 StringgetDefault()そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。NativeTypegetNativeType()NATIVEの型の識別コードを返します。StringvalueAction(String action, String oldValue, String newValue)action で指定されたコマンドを実行して、値の変換を行います。StringvalueAdd(String value)String引数の文字列を+1した文字列を返します。StringvalueAdd(String value, String add)String引数の文字列に、第2引数に指定の文字列(数字、日付等)を加算して返します。ErrorMessagevalueCheck(String key, String value, int sizeX, int sizeY, String typeParam, boolean isStrict)データが登録可能かどうか[true/false]をチェックします。StringvalueFill(String value, int sizeX, int sizeY, String encode)半角スペースで固定長(半角換算の数)に変換した文字列を返します。StringvalueSet(String value)エディターで編集されたデータを登録する場合に、データそのものを変換して、実登録データを作成します。protected ErrorMessagexssCheck(String key, String value, ErrorMessage msg)HTMLタグかどうかをチェックします。
-
-
-
コンストラクタの詳細
-
AbstractDBType
public AbstractDBType()
デフォルトコンストラクター- 変更履歴:
- 4.0.0.0 (2005/01/31) type 廃止
-
AbstractDBType
public AbstractDBType(String defValue)
コンストラクター 各サブクラスのタイプ値とデフォルト値を設定して、オブジェクトを構築します。- パラメータ:
defValue- データのデフォルト値- 変更履歴:
- 4.0.0.0 (2005/01/31) type 廃止
-
-
メソッドの詳細
-
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 String valueFill(String value, int sizeX, int sizeY, String encode)
半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 なお、エラーチェックは行われません。 実行前に、必ず valueCheck( String value ,int len ) を行う必要があります。
-
getDefault
public String getDefault()
そのDBTypeの,デフォルトの値(物理的初期設定値)を返します。 一般に、文字列の場合は,ゼロストリング"" 数字の場合は "0" です。- 定義:
getDefaultインタフェース内DBType- 戻り値:
- 物理的初期設定値
-
valueAdd
public String valueAdd(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 String valueAdd(String value, String add)
String引数の文字列に、第2引数に指定の文字列(数字、日付等)を加算して返します。 これは、valueAdd( String ) と本質的には同じ動きをしますが、任意の文字列を加算する ため、主として、数字系や日付系の DBType にのみ実装します。 実装がない場合は、UnsupportedOperationException を throw します。 第2引数 が、null の場合は、+1 する valueAdd( String )が呼ばれます。 これは、将来的には、valueAdd( String ) を無くすことを意味します。- 定義:
valueAddインタフェース内DBType- パラメータ:
value- String引数add- 加算する文字列(null の場合は、従来と同じ、+1 します。)- 戻り値:
- 引数の文字列第2引数に指定の文字列(数字、日付等)を加算した文字列。
- 例外:
UnsupportedOperationException- 実装が存在しない場合- 変更履歴:
- 5.6.0.3 (2012/01/24) ADD に、引数の値を加算する機能を追加します。
-
valueSet
public String valueSet(String value)
エディターで編集されたデータを登録する場合に、データそのものを変換して、実登録データを作成します。 例えば,大文字のみのフィールドなら、大文字化します。 実登録データの作成は、DBType オブジェクトを利用しますので, これと CellEditor とがアンマッチの場合は、うまくデータ変換 されない可能性がありますので、注意願います。
-
valueAction
public String valueAction(String action, String oldValue, String newValue)
action で指定されたコマンドを実行して、値の変換を行います。 oldValue(旧データ)は、元のDBTableModelに設定されていた値です。通常は、 この値を使用してカラム毎に変換を行います。newValue(新データ)は、引数で 指定された新しい値です。この値には、パラメータを指定して変換方法を 制御することも可能です。 指定のアクションがカラムで処理できない場合は、エラーになります。- 定義:
valueActionインタフェース内DBType- パラメータ:
action- アクションコマンドoldValue- 入力データ(旧データ)newValue- 入力データ(新データ)- 戻り値:
- 実行後のデータ
-
valueCheck
public ErrorMessage valueCheck(String key, String value, int sizeX, int sizeY, 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(String key, 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 の引数が、変更されているので、修正します。
-
-