パッケージ net.utsuro.mask

クラス RandomAddressGenerator

  • すべての実装されたインタフェース:
    DataMask

    public class RandomAddressGenerator
    extends Object
    implements DataMask
    住所のランダム生成クラス.
    利用可能なマスキングルール
    プロパティ説明
    isNullReplace元値がNullの場合でも置換するかどうか
    isUniqueValue生成した値を一意にするかどうか(NULL以外)
    isDeterministicReplace決定論的置換するかどうか ※INPUTが同じならOUTPUTも同じ値にする(NULL以外)
    uniqueId決定論的/一意制管理の任意の識別子 ※カラム名で無くても良い
    addrFormat住所生成時に返却する配列フォーマット(カンマ区切り) ※デフォルトは下記
    [0] %zip 郵便番号
    [1] %pref 都道府県
    [2] %city 市区町村
    [3] %town 町域
    [4] %street 番地
    [5] %prefKana 都道府県カナ
    [6] %cityKana 市区町村カナ
    [7] %townKana 町域カナ
    [8] %streetKana 番地カナ
    [9] %jisKenCode JIS都道府県コード(2桁)
    [10] %jisCityCode JIS市区町村コード(5桁)
    [11] %jisCityShortCode JIS市区町村コード(3桁)
    [12] %addrCode 住所コード
    selectListSeqNoColNameデータ選択リストの連番カラム名 ※ランダム選択するためには対象テーブルには空き番の無い連番カラム(数値)が必要。指定が無い場合はデフォルトのseqnoとなる。
    usePostCodeFormat住所生成時に郵便番号をハイフン付きにするかどうか
    useUpperCaseKana生成時にカナを大文字にするかどうか
    useHalfKana生成時にカナを半角にするかどうか
    useWideKana生成時にカナを全角にするかどうか
    useBanchiGenerate住所生成時に番地部分に元の値を使用するかどうか
    unmaksedLengthLeftマスクしない文字数(左)
    unmaksedLengthRightマスクしない文字数(右)
    useWhiteSpaceMask全半角スペース、タブ、改行の置換有無
    useOddCharMask奇数目の文字のみマスクするパターンの使用有無
    useEvenCharMask偶数目の文字のみマスクするパターンの使用有無
    randomGenCharTypeランダム生成文字の文字種 ※無指定は元の文字種と同じものを生成
    useUpperCase置換時に英字を大文字にするかどうか
    useLowerCase置換時に英字を小文字にするかどうか
    useAfterTextReplaceランダムマスク後に置換マスクを使用するかどうか
    useAfterRepOddCharMaskマスク後の置換マスクで奇数目の文字のみマスクするパターンの使用有無
    useAfterRepEvenCharMaskマスク後の置換マスクで偶数目の文字のみマスクするパターンの使用有無
    maxSjisByteCounts住所生成時に返却する配列ごとのSJIS換算byte数をint配列で指定
    shiftOverflowStrings住所生成時に返却する配列ごとの桁溢れ時に次の枠にシフトさせるかどうかをbool配列で指定
    beforeTrim入力値を処理前にTrimするかどうか
    isKeepWideSpaceTrimbeforeTrim指定時に半角スペースのみTrimするならtrueを指定
    useLTrimbeforeTrim指定時にLTrimをするならtrueを指定
    useRTrimbeforeTrim指定時にRTrimをするならtrueを指定
    • コンストラクタの詳細

      • RandomAddressGenerator

        public RandomAddressGenerator()
    • メソッドの詳細

      • useDatabase

        public boolean useDatabase​(MaskingRule rule)
        このマスク処理でテータベースを使用するかどうか.
        定義:
        useDatabase インタフェース内 DataMask
        パラメータ:
        rule - マスク化ルール
        戻り値:
        true=使用する, false=使用しない
      • getConnection

        public Connection getConnection()
        DBコネクションを取得.
        定義:
        getConnection インタフェース内 DataMask
        戻り値:
        conn
      • setConnection

        public void setConnection​(Connection conn)
        DBコネクションをセット.
        定義:
        setConnection インタフェース内 DataMask
        パラメータ:
        conn - セットする conn
      • execute

        public Object execute​(Object src,
                              MaskingRule rule)
                       throws Exception
        ランダムに住所を生成して置換する.
        定義:
        execute インタフェース内 DataMask
        パラメータ:
        src - 置換したい文字列
        rule - マスク化ルール
        戻り値:
        置換後の文字列
        例外:
        SQLException - DBアクセス時のエラー
        Exception - エラー発生時
      • generate

        public String[] generate​(String[] src,
                                 MaskingRule rule)
                          throws Exception
        ランダムに住所を生成して置換する.
        パラメータ:
        src - 置換したい文字列
        rule - マスク化ルール
        戻り値:
        置換後の文字列
        例外:
        SQLException - DBアクセス時のエラー
        Exception