jp.terasoluna.fw.validation
クラス ValidationUtil

java.lang.Object
  上位を拡張 jp.terasoluna.fw.validation.ValidationUtil

public class ValidationUtil
extends java.lang.Object

検証ロジックのユーティリティクラス。


フィールドの概要
protected static java.lang.String HANKAKU_KANA_LIST_KEY
          ApplicationResources ファイルに定義された半角文字テーブルを取得するキー。
protected static java.lang.String hankakuKanaList
          半角カナのチェックに使用する文字列。
protected static java.lang.String ZENKAKU_BEGIN_U00_LIST
          UNICODE文字コード'¥u0000'から'¥u00ff'の 範囲内に存在する全角文字列。
protected static java.lang.String ZENKAKU_KANA_LIST_KEY
          ApplicationResources ファイルに定義された全角文字テーブルを取得するキー。
protected static java.lang.String zenkakuKanaList
          全角カナのチェックに使用する文字列。
 
コンストラクタの概要
ValidationUtil()
           
 
メソッドの概要
protected static boolean checkNumberFigures(int length, int checkLength, boolean isAccorded)
          桁数チェックを行うためのヘルパメソッド。
static boolean hasNotProhibitedChar(java.lang.String value, java.lang.String prohibitedChars)
          検証値が禁止文字を含まないことをチェックする。
static boolean isAlphaNumericString(java.lang.String value)
          検証値が英数字のみからなる文字列であることをチェックする。
static boolean isArrayInRange(java.lang.Object obj, int min, int max)
          配列、または、Collectionの要素数が、 指定された最大値・最小値の範囲内であるかどうかをチェックする。
static boolean isByteInRange(java.lang.String value, java.lang.String encoding, int min, int max)
          検証値のバイト列長が指定した最大値・最小値の範囲内であるかどうかを チェックする。
static boolean isDateInRange(java.lang.String value, java.lang.String startDateStr, java.lang.String endDateStr, java.lang.String datePattern, java.lang.String datePatternStrict)
          日付が指定した範囲内であるかどうかチェックする。
protected static boolean isHankakuChar(char c)
          指定された文字が半角文字であることをチェックする。
protected static boolean isHankakuKanaChar(char c)
          指定された文字が半角カナ文字であることをチェックする。
static boolean isHankakuKanaString(java.lang.String value)
          検証値が半角カナ文字のみからなる文字列であるかどうかを チェックする。
static boolean isHankakuString(java.lang.String value)
          検証値が半角文字のみからなる文字列であるかどうかを チェックする。
static boolean isNumber(java.math.BigDecimal value, int integerLength, boolean isAccordedInteger, int scaleLength, boolean isAccordedScale)
          検証値が指定された桁数であることをチェックする。
static boolean isNumericString(java.lang.String value)
          検証値が数字のみからなる文字列であることをチェックする。
static boolean isUpperAlphaNumericString(java.lang.String value)
          検証値が大文字英数字のみからなる文字列であることをチェックする。
static boolean isUrl(java.lang.String value, boolean allowallschemes, boolean allow2slashes, boolean nofragments, java.lang.String schemesVar)
          検証値がURL形式の文字列であるかどうかをチェックする。
protected static boolean isZenkakuChar(char c)
          指定された文字が全角文字であることをチェックする。
protected static boolean isZenkakuKanaChar(char c)
          指定された文字が全角カナ文字であることをチェックする。
static boolean isZenkakuKanaString(java.lang.String value)
          検証値が全角カナ文字のみからなる文字列であるかどうかを チェックする。
static boolean isZenkakuString(java.lang.String value)
          検証値が全角文字のみからなる文字列であるかどうかを チェックする。
static boolean matchRegexp(java.lang.String value, java.lang.String mask)
          検証値が正規表現に合致することをチェックする。
protected static void setHankakuKanaList()
          半角カナ定義を設定する。
protected static void setZenkakuKanaList()
          全角カナ定義を設定する。
static java.util.Date toDate(java.lang.String value, java.lang.String datePattern, java.lang.String datePatternStrict)
          文字列をDate型に変換する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

hankakuKanaList

protected static java.lang.String hankakuKanaList
半角カナのチェックに使用する文字列。


zenkakuKanaList

protected static java.lang.String zenkakuKanaList
全角カナのチェックに使用する文字列。


HANKAKU_KANA_LIST_KEY

protected static final java.lang.String HANKAKU_KANA_LIST_KEY
ApplicationResources ファイルに定義された半角文字テーブルを取得するキー。

関連項目:
定数フィールド値

ZENKAKU_KANA_LIST_KEY

protected static final java.lang.String ZENKAKU_KANA_LIST_KEY
ApplicationResources ファイルに定義された全角文字テーブルを取得するキー。

関連項目:
定数フィールド値

ZENKAKU_BEGIN_U00_LIST

protected static final java.lang.String ZENKAKU_BEGIN_U00_LIST
UNICODE文字コード'¥u0000'から'¥u00ff'の 範囲内に存在する全角文字列。

関連項目:
定数フィールド値
コンストラクタの詳細

ValidationUtil

public ValidationUtil()
メソッドの詳細

setHankakuKanaList

protected static void setHankakuKanaList()
半角カナ定義を設定する。


setZenkakuKanaList

protected static void setZenkakuKanaList()
全角カナ定義を設定する。


isHankakuKanaChar

protected static boolean isHankakuKanaChar(char c)
指定された文字が半角カナ文字であることをチェックする。

パラメータ:
c - 文字
戻り値:
半角カナ文字であれば true

isHankakuChar

protected static boolean isHankakuChar(char c)
指定された文字が半角文字であることをチェックする。

パラメータ:
c - 文字
戻り値:
半角文字であれば true

isZenkakuChar

protected static boolean isZenkakuChar(char c)
指定された文字が全角文字であることをチェックする。

パラメータ:
c - 文字
戻り値:
全角文字であれば true

isZenkakuKanaChar

protected static boolean isZenkakuKanaChar(char c)
指定された文字が全角カナ文字であることをチェックする。

パラメータ:
c - 文字
戻り値:
全角カナ文字であれば true

matchRegexp

public static boolean matchRegexp(java.lang.String value,
                                  java.lang.String mask)
検証値が正規表現に合致することをチェックする。

パラメータ:
value - 検証値
mask - 正規表現
戻り値:
検証値が正規表現に合致するならば trueを返す。 それ以外の場合、falseを返す。

isAlphaNumericString

public static boolean isAlphaNumericString(java.lang.String value)
検証値が英数字のみからなる文字列であることをチェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が英数字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isUpperAlphaNumericString

public static boolean isUpperAlphaNumericString(java.lang.String value)
検証値が大文字英数字のみからなる文字列であることをチェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が大文字英数字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isNumericString

public static boolean isNumericString(java.lang.String value)
検証値が数字のみからなる文字列であることをチェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が数字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isNumber

public static boolean isNumber(java.math.BigDecimal value,
                               int integerLength,
                               boolean isAccordedInteger,
                               int scaleLength,
                               boolean isAccordedScale)
検証値が指定された桁数であることをチェックする。
桁数チェックは、整数部と小数部に分けて、以下のように行う。

パラメータ:
value - 検証値
integerLength - 整数部の桁数
isAccordedInteger - 整数部の桁数一致チェックを行う場合、 trueを指定する。 整数部の桁数以内チェックを行う場合、 falseを指定する。
scaleLength - 小数部の桁数
isAccordedScale - 小数部の桁数一致チェックを行う場合、 trueを指定する。 小数部の桁数以内チェックを行う場合、 falseを指定する。
戻り値:
検証値が指定された桁数であるならば trueを返す。 それ以外の場合、falseを返す。

checkNumberFigures

protected static boolean checkNumberFigures(int length,
                                            int checkLength,
                                            boolean isAccorded)
桁数チェックを行うためのヘルパメソッド。

パラメータ:
length - 実際の桁数
checkLength - 比較を行うための桁数
isAccorded - 桁数一致チェックを行う場合、trueを指定する。 桁数以内チェックを行う場合、falseを指定する。
戻り値:
実際の桁数が指定された桁数であるならば trueを返す。 それ以外の場合、falseを返す。

isHankakuKanaString

public static boolean isHankakuKanaString(java.lang.String value)
検証値が半角カナ文字のみからなる文字列であるかどうかを チェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が半角カナ文字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isHankakuString

public static boolean isHankakuString(java.lang.String value)
検証値が半角文字のみからなる文字列であるかどうかを チェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が半角文字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isZenkakuString

public static boolean isZenkakuString(java.lang.String value)
検証値が全角文字のみからなる文字列であるかどうかを チェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が全角文字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isZenkakuKanaString

public static boolean isZenkakuKanaString(java.lang.String value)
検証値が全角カナ文字のみからなる文字列であるかどうかを チェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
戻り値:
検証値が全角カナ文字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

hasNotProhibitedChar

public static boolean hasNotProhibitedChar(java.lang.String value,
                                           java.lang.String prohibitedChars)
検証値が禁止文字を含まないことをチェックする。 エスケープが必要な文字は「\」文字列を付加する。 例えばダブルコーテーション「"」を禁止文字にする場合、 「\"」とエスケープ文字列を付加する必要がある。 禁止文字がnull文字列、または空文字列は正当とみなされる。

パラメータ:
value - 検証値
prohibitedChars - 禁止文字の文字列
戻り値:
検証値が禁止文字を含んでいなければtrue、 それ以外はfalseを返す。

isArrayInRange

public static boolean isArrayInRange(java.lang.Object obj,
                                     int min,
                                     int max)
配列、または、Collectionの要素数が、 指定された最大値・最小値の範囲内であるかどうかをチェックする。 検査対象の配列・Collectionnullの 場合は、要素数0として処理が行われる。また、検査対象の値が配列、 Collectionではない場合は、IllegalArgumentExceptionがスローされる。

パラメータ:
obj - 検査対象の配列・Collection
min - 要素数の最小値
max - 要素数の最大値
戻り値:
検査対象の配列・Collectionが 指定された最大値・最小値の範囲内であるならば trueを返す。 それ以外の場合、falseを返す。

isUrl

public static boolean isUrl(java.lang.String value,
                            boolean allowallschemes,
                            boolean allow2slashes,
                            boolean nofragments,
                            java.lang.String schemesVar)
検証値がURL形式の文字列であるかどうかをチェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
allowallschemes - 全てのスキームを許可するかどうかを指定
allow2slashes - ダブルスラッシュを許可するかどうかを指定
nofragments - URL分割を禁止するかどうかを指定
schemesVar - 許可するスキーム。 複数ある場合はカンマ区切りで指定する。
戻り値:
検証値がURL形式の文字列であるならば trueを返す。 それ以外の場合、falseを返す。

isByteInRange

public static boolean isByteInRange(java.lang.String value,
                                    java.lang.String encoding,
                                    int min,
                                    int max)
検証値のバイト列長が指定した最大値・最小値の範囲内であるかどうかを チェックする。サポートされていないエンコーディングを指定した場合、 例外が発生する。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
encoding - チェック時の文字列のencoding
min - 最大値
max - 最小値
戻り値:
検証値のバイト列長が指定した最大値・最小値の 範囲内であるならばtrueを返す。 それ以外の場合、falseを返す。

isDateInRange

public static boolean isDateInRange(java.lang.String value,
                                    java.lang.String startDateStr,
                                    java.lang.String endDateStr,
                                    java.lang.String datePattern,
                                    java.lang.String datePatternStrict)
日付が指定した範囲内であるかどうかチェックする。 null 文字列、空文字列は、正当とみなされる。

パラメータ:
value - 検証値
startDateStr - 日付範囲の開始の閾値となる日付。 datePattern、または、 datePatternStrictで指定した形式で設定すること。
endDateStr - 日付範囲の終了の閾値となる日付。 datePattern、または、 datePatternStrictで指定した形式で設定すること。
datePattern - フォーマットする日付パターン。
datePatternStrict - フォーマットする日付パターン。
戻り値:
検証値が半角カナ文字のみからなる文字列であるならば trueを返す。 それ以外の場合、falseを返す。

toDate

public static java.util.Date toDate(java.lang.String value,
                                    java.lang.String datePattern,
                                    java.lang.String datePatternStrict)
文字列をDate型に変換する。
変換は以下のように行われる。 いずれの場合も、厳格な日付チェックが行われるため、 2000/02/31のような、存在しない日付がvalue に指定された場合、nullが返却される。
  • valuenull、および、 空文字の場合、nullが返却される。

    パラメータ:
    value - 変換対象の文字列
    datePattern - 日付パターン(文字数を考慮しないパターン指定)
    datePatternStrict - 日付パターン(文字数を考慮したパターン指定)
    戻り値:
    文字列から変換されたDateインスタンス。変換が不可能な場合はnull。