com.ibm.mq

類別 MQEnvironment

  • java.lang.Object
    • com.ibm.mq.jmqi.JmqiObject
      • com.ibm.mq.MQEnvironment


  • public class MQEnvironment
    extends com.ibm.mq.jmqi.JmqiObject
    MQEnvironment 包含靜態欄位,可控制在其中建構 MQQueueManager 物件 (及其與 IBM MQ的對應連線) 的環境。 當呼叫 MQQueueManager 建構子時, MQEnvironment 類別中所設定的值會生效,在建構 MQQueueManager 物件之前,您必須先設定 MQEnvironment 類別中的值。

    附註: 這個類別的所有方法和屬性都適用於 Java 用戶端連線的 IBM MQ 類別,但只有 enableTracing ()、disableTracing ()、properties、version_notice、userID、connOptions 和 connTag 適用於連結連線。

    • 欄位摘要

      欄位 
      修飾元和類型 欄位和說明
      static java.net.URL ccdtUrlProperty
      指定用戶端通道定義表 (CCDT) 位置以定義連線內容的 URL。
      static int CCSID
      用戶端使用的 CCSID。
      static java.lang.String channel
      目標佇列管理程式上要連接的通道名稱。
      static java.lang.Object channelReceiveExit
      從佇列管理程式接收訊息時使用的接收結束程式。
      static java.lang.String channelReceiveExitUserData 
      static java.lang.Object channelSecurityExit
      連接至佇列管理程式時所使用的安全結束程式。
      static java.lang.String channelSecurityExitUserData 
      static java.lang.Object channelSendExit
      將訊息傳送至佇列管理程式時使用的傳送結束程式。
      static java.lang.String channelSendExitUserData 
      static int connOptions
      佇列管理程式連線選項。
      static byte[] connTag
      連線標籤,可讓使用者序列化對其在 z/OS 佇列管理程式上使用之資源的存取權。
      static java.lang.String exitClasspath
      當定義 Java 安全時,將傳送或接收結束程式作為要由類別載入器載入的字串,載入器必須知道其類別或 jar 包含該類別的路徑。
      static java.util.Collection hdrCompList
      標頭壓縮所支援的壓縮程式清單。
      static java.lang.String hostname
      IBM MQ 伺服器所在機器的 TCP/IP 主機名稱。
      static java.lang.String localAddressSetting
      透過防火牆連接至 IBM MQ 佇列管理程式時使用的本端位址 (包括埠範圍)。
      static java.util.Collection msgCompList
      訊息壓縮支援的壓縮程式清單。
      static java.lang.String password
      用來驗證 IBM MQ 用戶端身分的密碼。
      static int port
      要使用的埠。
      static java.util.Hashtable properties
      定義 IBM MQ 環境的雜湊表。
      static MQReceiveExit receiveExit
      已淘汰。 
      從佇列管理程式接收訊息時使用的接收結束程式。 它可讓您檢查及可能變更資料,且通常與佇列管理程式上的對應傳送結束程式一起使用。

      如果您想要提供自己的接收結束程式,請定義實作 MQReceiveExit 介面的類別,並將 receiveExit 指派給該類別的實例。

      如果您將此欄位設為空值,則不會呼叫接收結束程式。

      static java.lang.String receiveExitUserData
      已淘汰。  
      static MQSecurityExit securityExit
      已淘汰。 
      連接至佇列管理程式時所使用的安全結束程式。 它可讓您自訂嘗試連接至佇列管理程式時所發生的安全流程。

      如果您想要提供自己的安全結束程式,請定義實作 MQSecurityExit 介面的類別,並將 securityExit 指派給該類別的實例。

      如果您將此欄位設為空值,則不會呼叫安全結束程式。

      static java.lang.String securityExitUserData
      已淘汰。  
      static MQSendExit sendExit
      已淘汰。 
      將訊息傳送至佇列管理程式時使用的傳送結束程式。 它可讓您檢查及可能變更資料,且通常與佇列管理程式上的對應接收結束程式一起使用。

      如果您想要提供自己的傳送結束程式,請定義實作 MQSendExit 介面的類別,並將 sendExit 指派給該類別的實例。

      如果您將此欄位設為空值,則不會呼叫傳送結束程式。

      static java.lang.String sendExitUserData
      已淘汰。  
      static int sharingConversations
      每個連線的交談數。
      static java.util.Collection sslCertStores
      SSL CertStores 的集合。
      static java.lang.String sslCipherSuite
      SSL 要使用的「密碼組合」名稱。
      static boolean sslFipsRequired
      當此選項設為 true 時,在此用戶端處理程序的 SSL 連線上唯一可以使用的「密碼組合」是已啟用 FIPS 的那些密碼組合。
      static java.lang.String sslPeerName
      要由 SSL 使用之佇列管理程式的「識別名稱 (DN)」。
      static int sslResetCount
      在重設秘密金鑰之前,起始通道 MCA 所傳送及接收的未加密位元組總數。
      static java.lang.Object sslSocketFactory
      使用 SSL 加密連接時要使用的 Factory。
      static java.lang.String userID
      用來識別 IBM MQ 用戶端的 ID。
      static java.lang.String version_notice
      IBM MQ Java 類別的現行版本。
      • 繼承自類別 com.ibm.mq.jmqi.JmqiObject 的欄位

        COMP_JM, COMP_JN, COMP_JO
    • 建構子摘要

      建構子 
      建構子和說明
      MQEnvironment()
      建構子 (constructor)
    • 欄位詳細資料

      • version_notice

        public static final java.lang.String version_notice
        IBM MQ Java 類別的現行版本。
        另請參閱:
        常數欄位值
      • securityExit

        public static MQSecurityExit securityExit
        已淘汰。 連接至佇列管理程式時所使用的安全結束程式。 它可讓您自訂嘗試連接至佇列管理程式時所發生的安全流程。

        如果您想要提供自己的安全結束程式,請定義實作 MQSecurityExit 介面的類別,並將 securityExit 指派給該類別的實例。

        如果您將此欄位設為空值,則不會呼叫安全結束程式。

      • securityExitUserData

        public static java.lang.String securityExitUserData
        已淘汰。 
      • channelSecurityExit

        public static java.lang.Object channelSecurityExit
        連接至佇列管理程式時所使用的安全結束程式。 它可讓您自訂嘗試連接至佇列管理程式時所發生的安全流程。

        如果您想要提供您自己的安全結束程式,請定義類別來實作:-MQSecurityExit、WMQSecurityExit 介面或 String ,並將 securityExit 指派給該類別的實例,或將類別定義指派給字串。

        如果您將此欄位設為空值,則不會呼叫安全結束程式。

      • channelSecurityExitUserData

        public static java.lang.String channelSecurityExitUserData
      • SENDEXIT

        public static MQSendExit sendExit
        已淘汰。 將訊息傳送至佇列管理程式時使用的傳送結束程式。 它可讓您檢查及可能變更資料,且通常與佇列管理程式上的對應接收結束程式一起使用。

        如果您想要提供自己的傳送結束程式,請定義實作 MQSendExit 介面的類別,並將 sendExit 指派給該類別的實例。

        如果您將此欄位設為空值,則不會呼叫傳送結束程式。

      • sendExitUserData

        public static java.lang.String sendExitUserData
        已淘汰。 
      • channelSendExit

        public static java.lang.Object channelSendExit
        將訊息傳送至佇列管理程式時使用的傳送結束程式。 它可讓您檢查及可能變更資料,且通常與佇列管理程式上的對應接收結束程式一起使用。

        如果您想要提供您自己的傳送結束程式,請定義類別來實作:-MQSendExit、WMQSendExit 介面或 List 或 String ,並將 sendExit 指派給該類別的實例或類別定義給字串。

        如果您將此欄位設為空值,則不會呼叫傳送結束程式。

      • channelSendExitUserData

        public static java.lang.String channelSendExitUserData
      • ReceiveExit

        public static MQReceiveExit receiveExit
        已淘汰。 從佇列管理程式接收訊息時使用的接收結束程式。 它可讓您檢查及可能變更資料,且通常與佇列管理程式上的對應傳送結束程式一起使用。

        如果您想要提供自己的接收結束程式,請定義實作 MQReceiveExit 介面的類別,並將 receiveExit 指派給該類別的實例。

        如果您將此欄位設為空值,則不會呼叫接收結束程式。

      • receiveExitUserData

        public static java.lang.String receiveExitUserData
        已淘汰。 
      • channelReceiveExit

        public static java.lang.Object channelReceiveExit
        從佇列管理程式接收訊息時使用的接收結束程式。 它可讓您檢查及可能變更資料,且通常與佇列管理程式上的對應傳送結束程式一起使用。

        如果您想要提供您自己的傳送結束程式,請定義類別來實作:-MQReceiveExit、WMQReceiveExit 介面或 List ro String ,並將 receiveExit 指派給該類別的實例或將類別定義指派給字串。

        如果您將此欄位設為空值,則不會呼叫接收結束程式。

      • channelReceiveExitUserData

        public static java.lang.String channelelReceiveExitUserData
      • exitClassPath

        public static java.lang.String exitClasspath
        當定義 Java 安全時,將傳送或接收結束程式作為要由類別載入器載入的字串,載入器必須知道其類別或 jar 包含該類別的路徑。 載入器會使用系統內容 com.ibm.mq.exitClasspath 來尋找類別。 用戶端應用程式可以使用此內容來新增將動態載入的類別路徑。

      • HOSTNAME

        public static java.lang.String hostname
        IBM MQ 伺服器所在機器的 TCP/IP 主機名稱。 如果未設定主機名稱,且未設定任何置換內容,則會使用連結模式來連接至本端佇列管理程式。
      • public static int port
        要使用的埠。 這是 IBM MQ 接聽連線要求的埠。

        預設值是 1414。

      • channel

        public static java.lang.String channel
        目標佇列管理程式上要連接的通道名稱。 以連結模式直接連接至 IBM MQ 時不適用。 在建構以用戶端模式使用的 MQQueueManager 實例之前,您可以 必須 設定此欄位或對應的內容。
      • userID

        public static java.lang.String userID

        用來識別 IBM MQ 用戶端的 ID。 它相當於 IBM MQ 環境變數 MQ_USER_ID。

        預設值為空值。

        如果未定義此用戶端的安全結束程式,且 userID 設為空值或空字串 "" ,則 Java 的 IBM MQ 類別會查詢 Java 系統內容 "user.name " ,並將此內容傳輸至伺服器。

        如果未定義此用戶端的安全結束程式,且 userID 已設為空值及空字串 "" 以外的值,則會將此值傳輸至伺服器。

        如果已定義此用戶端的安全結束程式,則結束程式有責任套用任何應用程式特定的安全邏輯。 userID 的值無法用於結束程式,且不會傳輸至伺服器。

      • 密碼

        public static java.lang.String password
        用來驗證 IBM MQ 用戶端身分的密碼。 它相當於 MQ 環境變數 MQ_PASSWORD。

        如果未定義此用戶端的安全結束程式,則會將密碼值傳輸至伺服器,且在呼叫時可供伺服器安全結束程式使用。

        預設值為空值。

      • ccdtUrlProperty

        public static java.net.URL ccdtUrlProperty
        指定用戶端通道定義表 (CCDT) 位置以定義連線內容的 URL。
      • CCSID

        public static int CCSID
        用戶端使用的 CCSID。 以連結模式直接連接至 IBM MQ 時不適用。

        變更此值會影響您連接的佇列管理程式在 IBM MQ 標頭中轉換資訊的方式。 IBM MQ 標頭中的所有資料都是從 ASCII 字碼集的不變部分繪製,但不包括 MQMessage.applicationIdDataMQMessage.putApplicationName欄位。

        如果您避免對這兩個欄位使用 ASCII 字碼集變式部分的字元,則 CCSID 可以從 819 變更為任何其他 ASCII 字碼集。

        如果您將用戶端 CCSID 變更為與您所連接的佇列管理程式相同,則會增加佇列管理程式的效能優勢,因為它不會嘗試轉換訊息標頭。 基於上述原因,這僅適用於 ASCII 字碼集-當使用 EBCDIC 與佇列管理程式通訊時,您不得將 CCSID 設為 EBCDIC 型值。

        預設值為 819。

        另請參閱:
        MQMessage
      • SSLCIPHERSUITE

        public static java.lang.String sslCipherSuite
        SSL 要使用的「密碼組合」名稱。 SSL 僅適用於用戶端連線,並透過設定 sslCipherSuite 來觸發。 如果未設定 sslCipherSuite ,則所有其他值都不相關,並使用標準非 SSL 連線來連接至伺服器。
        另請參閱:
        sslCertStores, sslPeerName
      • SSLPEERNAME

        public static java.lang.String sslPeerName
        要由 SSL 使用之佇列管理程式的「識別名稱 (DN)」。 同層級名稱設為指出只有在伺服器順利鑑別為特定 DN 時才容許連線。
        另請參閱:
        sslCipherSuite, sslCertStores
      • sslCertStores

        public static java.util.Collection sslCertStores
        SSL CertStores 的集合。 CertStores (僅限J2SE 1.4) 的集合可讓 IBM MQ Java 用戶端在「憑證撤銷清冊 (CRL)」中檢查憑證是否撤銷。
        另請參閱:
        sslCipherSuite, sslPeerName
      • sslSocketFactory

        public static java.lang.Object sslSocketFactory
        使用 SSL 加密連接時要使用的 Factory。 如果設定 sslCipherSuite ,此變數可用來自訂 SSL 連線的所有層面。

        如需建構及自訂 SSLSocketFactory 實例的相關資訊,請參閱 JSSE 提供者。

        如果設為空值 (預設值) 且要求 SSL 加密,則會使用預設 SSLSocketFactory。

        如果未處理此變數,則會忽略此變數 sslCipherSuite是空值。

      • SSLRESETCOUNT

        public static int sslResetCount
        在重設秘密金鑰之前,起始通道 MCA 所傳送及接收的未加密位元組總數。 位元組數包括訊息通道代理程式所傳送的控制資訊。 值 0 會停用秘密金鑰重設的發生。
      • sslFipsRequired

        public static boolean sslFipsRequired
        當此選項設為 true 時,在此用戶端處理程序的 SSL 連線上唯一可以使用的「密碼組合」是已啟用 FIPS 的那些密碼組合。 在此情況下,如果已指定自訂的 sslSocketFactory ,則不會使用自訂的 sslSocketFactory ,因為無法保證 sslSocketFactory 符合 FIPS 標準。
      • localAddressSetting

        public static java.lang.String localAddressSetting
        透過防火牆連接至 IBM MQ 佇列管理程式時使用的本端位址 (包括埠範圍)。 格式為[ip-addr][(low-port[,high-port])].

        以下是一些範例:

        9.20.4.98
        通道會在本端連結至位址 9.20.4.98
        9.20.4.98(1000)
        通道會在本端連結至位址 9.20.4.98 ,並使用埠 1000
        9.20.4.98(1000,2000)
        通道會在本端連結至位址 9.20.4.98 ,並使用 1000 至 2000 範圍內的埠
        (1000)
        通道在本端連結至埠 1000
        (1000,2000)
        通道在本端連結至 1000 至 2000 範圍內的埠

        您可以指定主機名稱而非 IP 位址。 當您啟動 JVM 時,會從系統內容 com.ibm.mq.localAddress 起始設定變數。 預設值為空值。

      • CONNTAG

        public static byte [] connTag
        連線標籤,可讓使用者序列化對其在 z/OS 佇列管理程式上使用之資源的存取權。 connTag 字串會截斷為 128 個位元組。 如果未指定,則會忽略 connTag connOptions未設定
      • SharingConversations

        public static int sharingConversations
        每個連線的交談數。 容許使用者開啟或關閉多工。 值 0 會關閉多工。
    • 建構子詳細資料

      • MQEnvironment

        public MQEnvironment ()
        建構子 (constructor)
    • 方法詳細資料

      • getVersionNotice

        public static final java.lang.String getVersionNotice ()
        取得 IBM MQ Java 類別的現行版本。
        傳回:
        版本。
      • enableTracing

        public static void enableTracing (int level)
        參數:
        level-在此版本中已忽略
      • enableTracing

        public static void enableTracing (int level ,
                                         java.io.OutputStream 串流)
        Turns on tracing to console & (default) file
        參數:
        level-在此版本中已忽略
        stream-目前被忽略 (不幸)
      • disableTracing

        public static void disableTracing ()
        此方法會關閉 IBM MQ Client for Java 追蹤機能。
      • setDefaultConnectionManager

        public static void setDefaultConnectionManager (com.ibm.mq.MQConnectionManager mqCxMan)
        設定預設 MQConnectionManager ,並清空 MQPoolTokens 集。 在 MQQueueManager 建構子上未指定任何 ConnectionManager 時,會使用預設 ConnectionManager。
        參數:
        mqCxMan-提供的 MQConnectionManager。
      • getDefaultConnectionManager

        public static com.ibm.mq.MQConnectionManager getDefaultConnectionManager ()
        取得預設 ConnectionManager。
        傳回:
        如果預設連線管理程式是 MQConnectionManager 而非 ConnectionManager ,則為空值。
      • addConnectionPoolToken

        public static void addConnectionPoolToken (MQPoolToken token)
        將給定的 MQPoolToken 新增至連線儲存區。 預設 ConnectionManager 可以使用此作為提示; 通常,只有在連線儲存區中至少有一個記號時才會啟用它。
        參數:
        token-要新增的記號。
      • addConnectionPoolToken

        public static MQPoolToken addConnectionPoolToken ()
        建構 MQPoolToken 並將它新增至記號集。 記號會傳回至應用程式,稍後會傳遞至 removeConnectionPoolToken()方法。
        傳回:
        已新增的記號。
      • removeConnectionPoolToken

        public static void removeConnectionPoolToken (MQPoolToken token)
        從連線儲存區移除記號。
        參數:
        token-要移除的記號。
      • getQueueManagerReference

        public static MQQueueManager getQueueManagerReference (int scope)
        已淘汰。 此方法及 MQC.MQ_QMGR_ASSOCION_PROPERTY 已淘汰,因為它們通常不提供特定值。

        傳回 MQQueueManager物件參照 (如果在指定範圍內可用的話)。 範圍必須是 MQC.ASSOCATE_ALL 或 MQC.ASSOCIATE_THREAD} 之一,且必須已建立佇列管理程式,並將 MQC.MQ_QMGR_ASSOCION_PROPERTY 內容設為所要求的範圍。

        如果未在指定的範圍內建立任何佇列管理程式,或如果指定 MQC.ASSOCIATE_NONE ,則此方法將傳回空值。

        此方法的呼叫與呼叫相同 MQEnvironment.getQueueManagerReference(int, Object) 具有空值物件。

        參數:
        scope-關聯範圍
        傳回:
        MQQueueManager ,如果沒有可用的參照,則為空值。
        另請參閱:
        getQueueManagerReference(int, Object)
      • getQueueManagerReference

        public static MQQueueManager getQueueManagerReference (int scope ,
                                                              java.lang.Object 環境定義)
        已淘汰。 此方法及 MQC.MQ_QMGR_ASSOCION_PROPERTY 已淘汰,因為它們通常不提供特定值。

        傳回 MQQueueManager物件參照 (如果在指定範圍內可用的話)。 範圍必須是下列其中一項: MQC.ASSOCIATE_ALLMQC.ASSOCIATE_THREAD,且必須已使用建立佇列管理程式 MQC.MQ_QMGR_ASSOCIATION_PROPERTY設為所要求的範圍。 提供的物件提供識別範圍內的 MQQueueManager 所需的資訊; 對於 MQC.ASSOCITE_ALL 和 MQC.Associate_THREAD ,此物件必須是包含佇列管理程式名稱的字串。

        如果在指定的範圍內未建立由提供的物件所識別的佇列管理程式,或如果 MQC.ASSOCIATE_NONE已指定 ,此方法將傳回空值。

        此方法傳回的 MQQueueManager 物件將參照與使用 MQConstants.MQ_QMGR_ASSOCATION_PROPERTY 集建立的 MQQueueManager 相同的基礎 HConn ,因此兩者將共用相同的交易環境定義。 如果嘗試在不同佇列管理程式的相同環境定義上建立第二個 MQQueueManager 物件,則會建立個別的 HConn ,且第一個和第二個物件會有獨立的交易環境定義。 這些環境定義將延伸至 IBM MQ 協調 JDBC 交易,方法是使用 MQQueueManager.getJDBCConnection(XADataSource)適當佇列管理程式上的

        參數:
        scope-關聯範圍
        context-包含環境定義的物件。 目前必須是指定 IBM MQ 佇列管理程式名稱的字串
        傳回:
        MQQueueManager ,如果沒有可用的參照,則為空值。
© Copyright IBM Corp. 2008 , 2016. All Rights Reserved.