com.ibm.mq.headers

類別 MQRFH2

  • java.lang.Object
    • com.ibm.mq.jmqi.JmqiObject
      • com.ibm.mq.headers.internal.Header
        • com.ibm.mq.headers.MQRFH2
  • 所有實作的介面:
    MQChainable, MQData, MQHeader


    public class MQRFH2
    extends com.ibm.mq.headers.internal.Header
    實作 MQChainable
    代表 MQRFH2 結構的標頭類別。 除了提供對結構定義標頭欄位的存取權之外,這個類別還提供方法,可從 NameValueData 可變長度欄位所包含的 XML 格式資料夾中擷取及設定欄位。
    • 巢狀類別摘要

      巢狀類別 
      修飾元和類型 類別和說明
      static interface  MQRFH2.Element
      用來取得及設定值的「元素」介面
    • 欄位摘要

      • 繼承自類別 com.ibm.mq.headers.internal.Header 的欄位

        DEFAULT_CCSID, DEFAULT_ENCODING, delegate
      • 繼承自類別 com.ibm.mq.jmqi.JmqiObject 的欄位

        COMP_JM, COMP_JN, COMP_JO
    • 建構子摘要

      建構子 
      建構子和說明
      MQRFH2()
      建構具有預設欄位值的 MQRFH2 實例。
      MQRFH2(java.io.DataInput message)
      建構從 MQMessage 移入的 MQRFH2 實例。
      MQRFH2(java.io.DataInput message, int encoding, int characterSet)
      建構從 DataInput 來源移入的 MQRFH2 實例。
    • 方法摘要

      所有方法 實例方法 具體方法 已淘汰的方法 
      修飾元和類型 方法和說明
      java.lang.String format() 
      boolean getBooleanFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的布林值
      byte getByteFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的位元組值
      byte[] getBytesFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的位元組陣列值
      char getCharFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的位元組值
      int getCodedCharSetId()
      取得下列資料的字集 ID。
      double getDoubleFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的倍精準度浮點數值
      int getEncoding()
      取得下列資料的數值編碼。
      java.lang.Object getFieldValue(java.lang.String folder, java.lang.String tag) 
      java.lang.Object getFieldValue(java.lang.String folder, java.lang.String field, int occurrenceP) 
      java.util.List getFieldValues(java.lang.String folder, java.lang.String field) 
      int getFlags()
      從標頭取得旗標
      float getFloatFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的浮點值
      java.lang.String getFolderContent(java.lang.String name)
      已淘汰。  
      java.lang.String[] getFolderStrings() 
      java.lang.String getFormat()
      取得 NameValueString 之後的資料格式名稱
      int getIntFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的整數值
      long getLongFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的 long 值
      int getNameValueCCSID()
      取得 NameValue 資料的編碼字集
      byte[] getNameValueData()
      取得 NameValue 資料
      int getNameValueLength() 
      short getShortFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的短值
      java.lang.String getStringFieldValue(java.lang.String folder, java.lang.String field)
      取得指定欄位的字串值
      java.lang.String getStrucId()
      取得結構 ID; 值將為 MQRFH_STRUC_ID
      int getStrucLength()
      取得結構的長度。
      int getVersion()
      取得結構版本號碼
      int nextCharacterSet() 
      void nextCharacterSet(int value)
      設定下一個標頭或訊息內容的 CCSID。
      int nextEncoding() 
      void nextEncoding(int value)
      設定下一個標頭或訊息內容的數值編碼。
      java.lang.String nextFormat() 
      void nextFormat(java.lang.String value)
      設定下一個標頭或訊息內容的格式。
      int read(java.io.DataInput input, int encoding, int characterSet)
      從指定的資料來源起始設定此標頭
      void setByteFieldValue(java.lang.String folder, java.lang.String field, byte value)
      設定指定欄位的位元組值
      void setCharFieldValue(java.lang.String folder, java.lang.String field, char value)
      設定指定欄位的短值
      void setCodedCharSetId(int value)
      設定下列資料的字集 ID。
      void setDoubleFieldValue(java.lang.String folder, java.lang.String field, double value)
      設定指定欄位的倍精準度浮點數值
      void setEncoding(int value)
      設定下列資料的數值編碼。
      void setFieldValue(java.lang.String folder, java.lang.String field, java.lang.Object value)
      設定欄位的值
      void setFieldValues(java.lang.String folder, java.lang.String field, java.util.List values)
      設定多值欄位的值
      void setFlags(int value)
      設定標頭上的旗標
      void setFloatFieldValue(java.lang.String folder, java.lang.String field, float value)
      設定指定欄位的浮點數值
      void setFolderContent(java.lang.String name, java.lang.String content)
      已淘汰。  
      void setFolderStrings(java.lang.String[] folders)
      將 MQRFH2 結構的變數部分內容取代為指定的字串陣列。
      void setFormat(java.lang.String value)
      設定 NameValueString 後面的資料格式名稱
      void setIntFieldValue(java.lang.String folder, java.lang.String field, int value)
      設定指定欄位的整數值
      void setLongFieldValue(java.lang.String folder, java.lang.String field, long value)
      設定指定欄位的 long 值
      void setNameValueCCSID(int value)
      設定 NameValue 資料的編碼字集
      void setNameValueData(byte[] value)
      設定 NameValueData 欄位。
      void setNameValueData(java.lang.String value)
      設定 NameValueData 欄位。
      void setShortFieldValue(java.lang.String folder, java.lang.String field, short value)
      設定指定欄位的短值
      int size() 
      java.lang.String toString() 
      int write(java.io.DataOutput outputP, int encoding, int characterSet)
      將此標頭寫入指定的位置
      • 繼承自類別 com.ibm.mq.headers.internal.Header 的方法

        characterSet, encoding, fields, getBytesValue, getCharValue, getCharValue, getIntValue, getJmqiEnv, getStringValue, getValue, headerType, read, read, setBytesValue, setCharValue, setCharValue, setIntValue, setStringValue, setValue, store, store, type, validate, write
      • 繼承自 java.lang.Object 類別的方法

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • 建構子詳細資料

      • MQRFH2

        公用 MQRFH2()
        建構具有預設欄位值的 MQRFH2 實例。
      • MQRFH2

        public MQRFH2(java.io.DataInput message)
               throws MQDataException,
                      java.io.IOException
        建構從 MQMessage 移入的 MQRFH2 實例。
        參數:
        message-要讀取的訊息
        擲出:
        MQDataException-如果訊息內容未產生有效的 MQRFH2 結構
        java.io.IOException-如果讀取訊息內容時發生問題
      • MQRFH2

        public MQRFH2(java.io.DataInput message ,
                      int encoding ,
                      int characterSet)
               throws MQDataException,
                      java.io.IOException
        建構從 DataInput 來源移入的 MQRFH2 實例。
        參數:
        message-要讀取的 MQMessage 或其他 DataInput 來源
        encoding-訊息中資料的起始數值編碼
        characterSet-訊息中資料的起始 CCSID
        擲出:
        MQDataException-如果訊息內容未產生有效的 MQRFH2 結構
        java.io.IOException-如果讀取訊息內容時發生問題
    • 方法詳細資料

      • 讀取

        public int read (java.io.DataInput input ,
                        int encoding ,
                        int characterSet)
                 throws java.io.IOException ,
                        MQDataException
        從指定的資料來源起始設定此標頭
        指定者:
        read 在介面中 MQData
        置換:
        read 在類別中 com.ibm.mq.headers.internal.Header
        參數:
        input-資料來源
        encoding-整數資料的編碼機制
        characterSet-套用至來源檔中資料的 CCSID
        傳回:
        the amount of data read
        擲出:
        java.io.IOException
        MQDataException
      • 寫入

        public int write (java.io.DataOutput outputP ,
                         int encoding ,
                         int characterSet)
                  throws java.io.IOException
        將此標頭寫入指定的位置
        指定者:
        write 在介面中 MQData
        置換:
        write 在類別中 com.ibm.mq.headers.internal.Header
        參數:
        outputP-資料位置
        encoding-整數資料的編碼機制
        characterSet-套用至資料位置中資料的 CCSID
        傳回:
        the amount of data written
        擲出:
        java.io.IOException
      • 大小

        public int size ()
        指定者:
        size 在介面中 MQData
        置換:
        size 在類別中 com.ibm.mq.headers.internal.Header
        傳回:
        此資料元素在訊息中所佔用的大小 (以位元組為單位)。
        另請參閱:
        Header.size()
      • 格式 (format)

        public java.lang.String format ()
        指定者:
        format 在介面中 MQChainable
        傳回:
        與此標頭物件或訊息內容相關聯的格式。
        另請參閱:
        MQChainable.format()
      • getStrucId

        public java.lang.String getStrucId ()
        取得結構 ID; 值將為 MQRFH_STRUC_ID
        傳回:
        結構 ID
      • getVersion

        public int getVersion ()
        取得結構版本號碼
        傳回:
        結構版本號碼
      • getStrucLength

        public int getStrucLength ()
        取得結構的長度。
        傳回:
        結構長度。
      • getEncoding

        public int getEncoding ()
        取得下列資料的數值編碼。
        傳回:
        數字編碼。 MQENC_ * 值的組合。
      • setEncoding

        public void setEncoding (int value)
        設定下列資料的數值編碼。
        參數:
        value-數字編碼。 MQENC_ * 值的組合。
      • getCodedCharSetId

        public int getCodedCharSetId ()
        取得下列資料的字集 ID。
        傳回:
        字集 ID。
      • setCodedCharSetId

        public void setCodedCharSetId (int value)
        設定下列資料的字集 ID。 MQCCSI_Q_MGR 不容許,因此我們將它對映至 MQCCSI_INHERIT (我認為這是最簡單的修正程式)
        參數:
        value-字集 ID。
      • getFormat

        public java.lang.String getFormat ()
        取得 NameValueString 之後的資料格式名稱
        傳回:
        格式名稱
      • setFormat

        public void setFormat (java.lang.String value)
        設定 NameValueString 後面的資料格式名稱
        參數:
        value-格式名稱
      • getFlags

        public int getFlags ()
        從標頭取得旗標
        傳回:
        旗幟
      • setFlags

        public void setFlags (int value)
        設定標頭上的旗標
        參數:
        value-旗標
      • getNameValueCCSID

        public int getNameValueCCSID ()
        取得 NameValue 資料的編碼字集
        傳回:
        NameValue 資料
      • setNameValueCCSID

        public void setNameValueCCSID (int value)
        設定 NameValue 資料的編碼字集
        參數:
        value-NameValue 資料的編碼字集
      • getNameValueLength

        public int getNameValueLength ()
        傳回:
        NameValueLength 欄位值。

        附註: 沒有 setNameValueLength 方法。 設定 NameValueData 欄位會導致相應地更新 NameValueLength 和 StrucLength 欄位值。

      • getNameValueData

        public byte [] getNameValueData ()
        取得 NameValue 資料
        傳回:
        NameValue 資料
      • setNameValueData

        public void setNameValueData (byte [] value)
        設定 NameValueData 欄位。 這會導致相應地更新 NameValueLength 和 StrucLength 欄位值,但不會修改 NameValueCCSID 欄位。
        參數:
        value-
      • setNameValueData

        public void setNameValueData (java.lang.String value)
                              throws java.io.IOException
        設定 NameValueData 欄位。 這會導致相應地更新 NameValueLength 和 StrucLength 欄位值。 字串資料會轉換成 NameValueCCSID 欄位中指出的 CCSID。
        參數:
        value-
        擲出:
        java.io.IOException
      • getFolderStrings

        public java.lang.String [] getFolderStrings ()
                                            throws java.io.IOException
        傳回:
        作為字串陣列的結構可變部分的內容。 這相當於 NameValueData 字串的陣列。
        擲出:
        java.io.IOException
      • setFolderStrings

        public void setFolderStrings (java.lang.String [] folders)
                              throws java.io.IOException
        將 MQRFH2 結構的變數部分內容取代為指定的字串陣列。 即會相應地更新 strucLength 欄位。
        參數:
        folders-
        擲出:
        java.io.IOException
      • getFolderContent

        public java.lang.String getFolderContent (java.lang.String name)
                                          throws java.io.IOException
        已淘汰。 
        參數:
        name-
        傳回:
        MQRFH2 內容中對應於具名資料夾的字串,如果不存在此類資料夾,則為空值。 如果有相符項,則會傳回資料夾字串 (含括資料夾標籤除外) 的內容。
        擲出:
        java.io.IOException
      • setFolderContent

        public void setFolderContent (java.lang.String name ,
                                     java.lang.String content)
                              throws java.io.IOException
        已淘汰。 
        設定具名資料夾的內容。 如果資料夾存在,除非內容引數是空值 (在此情況下會移除資料夾) ,否則會取代其內容。 如果資料夾不存在,除非內容引數是空值,否則會新增該資料夾。
        參數:
        name-
        content-
        擲出:
        java.io.IOException
      • getFieldValue

        public java.lang.Object getFieldValue (java.lang.String folder ,
                                              java.lang.String tag)
                                       throws java.io.IOException
        參數:
        folder-
        tag-
        傳回:
        資料夾字串內具有指定名稱之第一個欄位的內容,如果不存在此類欄位,則為空值。 如果有相符項,則會傳回欄位的內容 (含括欄位標籤較少)。
        擲出:
        java.io.IOException
      • getFieldValue

        public java.lang.Object getFieldValue (java.lang.String folder ,
                                              java.lang.String 欄位,
                                              int occurrenceP)
                                       throws java.io.IOException
        參數:
        folder-
        field-
        occurrenceP-
        傳回:
        資料夾字串內第 n個具有指定名稱的欄位的內容,如果不存在此類欄位,則為空值。 如果有相符項,則會傳回欄位的內容 (含括欄位標籤較少)。 出現次數 若為零,則會取得指定欄位的第一個出現項目; 出現次數 若為 1 ,則會取得下一個出現項目,依此類推。
        擲出:
        java.io.IOException
      • getFieldValues

        public java.util.List getFieldValues (java.lang.String folder ,
                                             java.lang.String 欄位)
                                      throws java.io.IOException
        參數:
        folder-
        field-
        傳回:
        包含資料夾中所有符合指定欄位名稱之欄位值的出現項目清單。 如果沒有相符的欄位或找不到資料夾,則清單是空的。
        擲出:
        java.io.IOException
      • setFieldValue

        public void setFieldValue (java.lang.String folder ,
                                  java.lang.String 欄位,
                                  java.lang.Object 值)
                           throws java.io.IOException
        設定欄位的值
        參數:
        folder--包含欄位的資料夾名稱
        field--欄位名稱
        value--欄位值
        擲出:
        java.io.IOException
      • setFieldValues

        public void setFieldValues (java.lang.String folder ,
                                   java.lang.String 欄位,
                                   java.util.List 值)
                            throws java.io.IOException
        設定多值欄位的值
        參數:
        folder--包含欄位的資料夾名稱
        field--欄位名稱
        values--欄位值
        擲出:
        java.io.IOException
      • getBooleanFieldValue

        public boolean getBooleanFieldValue (java.lang.String folder ,
                                            java.lang.String 欄位)
                                     throws java.io.IOException
        取得指定欄位的布林值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        布林值
        擲出:
        java.io.IOException
      • getIntFieldValue

        public int getIntFieldValue (java.lang.String folder ,
                                    java.lang.String 欄位)
                             throws java.io.IOException
        取得指定欄位的整數值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        整數值
        擲出:
        java.io.IOException
      • setIntFieldValue

        public void setIntFieldValue (java.lang.String folder ,
                                     java.lang.String 欄位,
                                     int value)
                              throws java.io.IOException
        設定指定欄位的整數值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getByteFieldValue

        public byte getByteFieldValue (java.lang.String folder ,
                                      java.lang.String 欄位)
                               throws java.io.IOException
        取得指定欄位的位元組值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        位元組值
        擲出:
        java.io.IOException
      • setByteFieldValue

        public void setByteFieldValue (java.lang.String folder ,
                                      java.lang.String 欄位,
                                      位元組值)
                               throws java.io.IOException
        設定指定欄位的位元組值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getShortFieldValue

        public short getShortFieldValue (java.lang.String folder ,
                                        java.lang.String 欄位)
                                 throws java.io.IOException
        取得指定欄位的短值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        短值
        擲出:
        java.io.IOException
      • setShortFieldValue

        public void setShortFieldValue (java.lang.String folder ,
                                       java.lang.String 欄位,
                                       短值)
                                throws java.io.IOException
        設定指定欄位的短值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getCharFieldValue

        public char getCharFieldValue (java.lang.String folder ,
                                      java.lang.String 欄位)
                               throws java.io.IOException
        取得指定欄位的位元組值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        位元組值
        擲出:
        java.io.IOException
      • setCharFieldValue

        public void setCharFieldValue (java.lang.String folder ,
                                      java.lang.String 欄位,
                                      char 值)
                               throws java.io.IOException
        設定指定欄位的短值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getLongFieldValue

        public long getLongFieldValue (java.lang.String folder ,
                                      java.lang.String 欄位)
                               throws java.io.IOException
        取得指定欄位的 long 值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        長值
        擲出:
        java.io.IOException
      • setLongFieldValue

        public void setLongFieldValue (java.lang.String folder ,
                                      java.lang.String 欄位,
                                      long 值)
                               throws java.io.IOException
        設定指定欄位的 long 值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getFloatFieldValue

        public float getFloatFieldValue (java.lang.String folder ,
                                        java.lang.String 欄位)
                                 throws java.io.IOException
        取得指定欄位的浮點值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        浮點數值
        擲出:
        java.io.IOException
      • setFloatFieldValue

        public void setFloatFieldValue (java.lang.String folder ,
                                       java.lang.String 欄位,
                                       浮點值)
                                throws java.io.IOException
        設定指定欄位的浮點數值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getDoubleFieldValue

        public double getDoubleFieldValue (java.lang.String folder ,
                                          java.lang.String 欄位)
                                   throws java.io.IOException
        取得指定欄位的倍精準度浮點數值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        倍精準度浮點數值
        擲出:
        java.io.IOException
      • setDoubleFieldValue

        public void setDoubleFieldValue (java.lang.String folder ,
                                        java.lang.String 欄位,
                                        倍精準數值)
                                 throws java.io.IOException
        設定指定欄位的倍精準度浮點數值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        value-要設定的值
        擲出:
        java.io.IOException
      • getBytesFieldValue

        public byte [] getBytesFieldValue (java.lang.String folder ,
                                         java.lang.String 欄位)
                                  throws java.io.IOException
        取得指定欄位的位元組陣列值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        位元組陣列
        擲出:
        java.io.IOException
      • getStringFieldValue

        public java.lang.String getStringFieldValue (java.lang.String folder ,
                                                    java.lang.String 欄位)
                                             throws java.io.IOException
        取得指定欄位的字串值
        參數:
        folder-標頭中的資料夾名稱
        field-標頭中的欄位名稱
        傳回:
        字串值
        擲出:
        java.io.IOException
      • toString

        public java.lang.String toString ()
        置換:
        toString 在類別中 com.ibm.mq.headers.internal.Header
        另請參閱:
        Object.toString()
© Copyright IBM Corp. 2008 , 2016. All Rights Reserved.