org.opengion.plugin.io

## クラス TableWriter_JSON

- java.lang.Object
- - org.opengion.hayabusa.io.AbstractTableWriter
  - - org.opengion.plugin.io.TableWriter_Default
    - - org.opengion.plugin.io.TableWriter_JSON

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

      public class TableWriter_JSON
      extends TableWriter_Default

  TableWriter をJSON形式で出力する為の実装クラスです。 DefaultTableWriter を継承していますので，ラベル，名前，データの出力部のみ オーバーライドして，JSON形式ファイルの出力機能を実現しています。 出力のJSON形式(JavaScript Object Notation)は、JavaScriptにおける オブジェクトの表記法をベースとした軽量なデータ記述言語です。 このクラスでは、基本的にはすべてを文字列として処理しますので、 数字や、true,false も、ダブルコーテーションでくくることになります。 ただし、null の場合は、null 表記になりますが、通常 空文字 "" になる場合もあります。 1レコードのみの場合でも、配列要素として取り扱います。 UTF-8 でエンコードし、MIMEタイプはapplication/json、拡張子はjson とするのが一般的です。 [ { "カラム1":"値1" , "カラム2":"値2" , … } , １レコード目 { "カラム1":"値1" , "カラム2":"値2" , … } , ２レコード目 ・・・・ { "カラム1":"値1" , "カラム2":"値2" , … } Ｎレコード目 ] writeTableParamタグで、key="JsonName" value="パラメータ名" を指定すると、 JSON形式で、配列をオブジェクトとしてまとめるパラメータを指定する事が可能です。 { パラメータ名:[ { "カラム1":"値1" , "カラム2":"値2" , … } , １レコード目 { "カラム1":"値1" , "カラム2":"値2" , … } , ２レコード目 ・・・・ { "カラム1":"値1" , "カラム2":"値2" , … } Ｎレコード目 ] } writeTableParamタグで、key="LowerCase" value="true" を指定すると、 すべてのカラムを小文字で出力します。（データ受信側の都合を配慮） 初期値は、false なので、基本的に大文字になります。
  変更履歴:

    5.6.0.3 (2012/01/24) 新規作成

  機能分類
    ファイル出力
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドのサマリー

    - ### クラスから継承されたフィールド org.opengion.hayabusa.io.AbstractTableWriter

      `clmNo, dbColumn, dbType, NUMBER, numberOfColumns, NVAR, STRING, table`

    - ### インタフェースから継承されたフィールド org.opengion.hayabusa.io.TableWriter

      `CSV_SEPARATOR, TAB_SEPARATOR`

  - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `TableWriter_JSON()`

  - ### メソッドのサマリー

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `setParam(java.util.List<HybsEntry> listParam)` パラメーターリストをセットします。
    `protected void` | `writeData(DBTableModel table, java.io.PrintWriter writer)` PrintWriter に DBTableModelのテーブル情報を書き込みます。
    `void` | `writeDBTable(java.io.PrintWriter writer)` DBTableModel から データを作成して,PrintWriter に書き出します。

    - ### クラスから継承されたメソッド org.opengion.plugin.io.TableWriter_Default

      `writeDBTable`

    - ### クラスから継承されたメソッド org.opengion.hayabusa.io.AbstractTableWriter

      `checkParam, createDBColumn, getDBTableModel, getEncode, getHeaderSequence, getSeparator, isAppend, isExcel, isUseNumber, isUseRenderer, quotation, quotation2, setAppend, setColumns, setDBTableModel, setEncode, setFilename, setFontName, setFontPoint, setHeaderSequence, setRecalcSheetName, setRefFilename, setRefSheetName, setSeparator, setSheetName, setSheetOverwrite, setSkipRowCount, setUseNumber, setUseRenderer, writeClass, writeHeader, writeLabel, writeName, writeSeparator, writeSize`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### コンストラクタの詳細

    - #### TableWriter_JSON

          public TableWriter_JSON()

  - ### メソッドの詳細

    - #### writeDBTable

          public void writeDBTable(java.io.PrintWriter writer)

      DBTableModel から データを作成して,PrintWriter に書き出します。
      定義:
        `writeDBTable` インタフェース内 `TableWriter`
      オーバーライド:
        `writeDBTable` クラス内 `TableWriter_Default`
      パラメータ:
        `writer` - PrintWriterオブジェクト

    - #### writeData

          protected void writeData(DBTableModel table,
                       java.io.PrintWriter writer)

      PrintWriter に DBTableModelのテーブル情報を書き込みます。 出力のXML形式は、ORACLE XDK での出力ファイルと同じ形式ですので、直接データベースに 登録することができます。
      オーバーライド:
        `writeData` クラス内 `TableWriter_Default`
      パラメータ:
        `table` - DBTableModelオブジェクト
        `writer` - PrintWriterオブジェクト
      変更履歴:

        5.6.0.3 (2012/01/24) JSON形式のフォーマットを作成します。
        5.6.1.2 (2013/02/22) jsonName もダブルクオートで囲う。

    - #### setParam

          public void setParam(java.util.List<HybsEntry> listParam)

      パラメーターリストをセットします。 JSONのパラメータ名を指定します。 引数が、null の場合は、何もしません。
      定義:
        `setParam` インタフェース内 `TableWriter`
      オーバーライド:
        `setParam` クラス内 `AbstractTableWriter`
      パラメータ:
        `listParam` - HybsEntryリスト
      変更履歴:

        5.6.0.3 (2012/01/24) JSONのパラメータ名を指定します。
        5.6.6.1 (2013/07/12) keys の整合性チェックを行います。

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