公共配置

公共配置文件所处在的位置为cfg/etc/commons.xml,用于主配置中定义声明的filter和connection,在主配置中可以直接进行引用。

a) public

b) codetables(n)|functions(n)

c) connections

d) Filters

1.全局静态变量定义public

本章公共配置需要特殊说明的是可以直接在主配置、服务配置中直接配置filters、connections用于声明所需要使用的connection、filter,但是他们的作用范围只在定义他们的配置文件中生效。如若此种情况只需要使用到自身定义的connection、filter,那么无需利用import引入工公共配置。

1.1public

声明定义平台环境变量,可以直接定义在主接口或者公共配置文件中,如果只定义在主接口文件中,只对定义该配置的主接口中的交易有效。

1.1.1父节点

  • root/common

1.1.2子节点

  • sys:定义平台配置环境变量;
  • extsys:从外围配置引入到平台配置环境变量;

1.1.3属性

1.1.4规则

1.1.5示例

<public>
    <sys name="BASEPATH" value="cfg" />
    <sys name="COMMONPATH" value="cfg/common" />
    <sys name="IMPORTPATH" value="cfg/imports" />
    <extsys ref="D:/TRM21.xml" type="xml">
        <sys name="TTEST1" value="Envelope.Header.RequestHead.SourceSysID" />
        <sys name="TTEST11" value="Envelope.Header.RequestHead.TargetSysID" />
    </extsys>
    <extsys ref="E:/wsdl/WifiProductService.wsdl" type="xml">
        <sys name="TTEST2" value="definitions.service.port.address@location" />
    </extsys>
    <extsys ref="E:/interface.properties" type="properties">
        <sys name="TTEST3" value="00000" />
    </extsys>
    <extsys ref="cfg/locale/interface.properties" type="properties">
        <sys name="TTEST4" value="00000" />
    </extsys>
</public>

1.2sys

定义一个平台配置环境变量,用于在配置中直接引用。

  • root/common

1.2.1父节点

  • public

1.2.2子节点

1.2.3属性

属性 描述 值类型 示例
Name 标识 string DATEBASEUSER
value string 当前字段的值

1.2.4规则

  • 为了便于在配置应用的时候易于理解,使其他用户能够清楚的知道该变量是平台配置环境变量,与上下文变量区分,建议name属性用大写填充

1.2.5示例

<sys name="BASEPATH" value="cfg" />

1.3extsys

用于说明一个外围系统配置文件路径,以及文件路径

1.3.1父节点

  • public

1.3.2子节点

  • sys

1.3.3属性

属性 描述 值类型 示例
ref 关联文件路径 string E:/interface.properties
type 文件类型 string properties
xml

1.3.4规则

  • type文件类型目前只支持properties、xml两种;
  • 可以配置多个sys子节点,对于properties文件sys的value值对应其中的key,如若是xml文件value值对应xml文件结果索引用于标识xml文件节点;

1.3.5示例

<extsys ref="E:/interface.properties" type="properties">
    <sys name="TTEST3" value="00000" />
</extsys>
<extsys ref="D:/TRM21.xml" type="xml">
    <sys name="TTEST1" value="Envelope.Header.RequestHead.SourceSysID" />
    <sys name="TTEST11" value="Envelope.Header.RequestHead.TargetSysID" />
</extsys>

2.connections

定义需要使用的connection,提供主配置引用。可以定义在主接口配置文件中或者cfg/etc/commons.xml文件中。

2.1示例

此公共配置connections定义了fileconnection与ftpconnection两个连接,分别由FileConnection.class与FtpConnection.class执行。

<connections>
    <connection id=”fileConnection” class=”FileConnection”/>
    <connection id=”ftpConnection” class=”FtpConnection”/>
</connections>

2.2.connection

2.2.1父节点

  • connections

2.2.2子节点

  • property:连接的属性节点,可以配置连接所需要的属性参数,如配置用户名,密码,url等;
  • poolSetting:连接池配置,此处专为数据库连接配置所用;

2.2.3属性

属性 描述 值类型 示例
id 标识 string 能表达通道含义的名字如socketconnection
class 实例 string cn.com.brilliance.Socket
Connection
pooled 是否连接池 boolean 默认为false,判断是否需要提供连接池属性

2.2.4property属性

属性 描述 值类型 示例
name 标识 string url:webservice发布地址
class:webservice发布的接口
method:接口提供的方法
value string 当前字段的值;
encrypt 加密 string BASE64、AES、DES(默认)、DESede、IDEA、PBE、RSA

2.2.5规则

  • 引用连接时如果配置与该处定义连接的property相同name的属性,可以直接替换;
  • 如果配置连接池属性需要指定pooled属性为true;
  • l 如果配置encrypt属性或者name=password的情况,将自动进行明文加密,默认采用DES加密

2.2.6示例

<connection id="jdbcConnection" class="JdbcConnection" pooled="true">
    <property name="driverClassName" value="#{DB_DRIVERCLSNAM}" />
    <property name="url" value="#{DB_URL}" /><!-- 数据库url -->
    <property name="username" value="#{DB_USRNAM}" /><!-- 用户名 -->
    <property name="password" value="#{DB_PWD}" />
        <poolSetting>
            <property name="initialSize" value="5" /><!-- 初始化连接 -->
            <property name="maxIdle" value="10" /><!-- 最大空闲连接 -->
            <property name="minIdle" value="5" /><!-- 最小空闲连接 -->
            <property name="maxActive" value="20" /><!-- 最大连接数量 -->
            <property name="logAbandoned" value="false" />
            <property name="removeAbandoned" value="true" />
            <property name="removeAbandonedTimeout" value="180" />
            <property name="maxWait" value="3000" />
        </poolSetting>
</connection>

3.filters

3.1示例

<filters>
    <filter id=”iso8583filter” class=”ISO8583Filter”>
        <parameter name=”bitmapsize” value=”16” />
    </filter>
</filters>

3.2.filter

定义特定类型的数据处理操作,指定处理实现代码类。

3.2.1父节点

  • filters

3.2.2子节点

  • parameter:配置参数项;

3.2.3属性

属性 描述 值类型 示例
id 标识 string 能表达通道含义的名字如socketconnection
class 实例 string cn.com.brilliance.Socket
Connection

3.2.4规则

  • 引用filter配置的parameter与在使用当中处理的field不会相互替换;

3.2.5示例

该filter配置foreach子节点,会根据foreach的条件再对foreach下面的field进行处理,实例中,foreach下配置的还有if节点,只有满足if节点条件才会对if下的field进行处理,不满足则会按照else下面的field进行处理。

<filter id="splitFilter" class="SplitFilter">
    <parameter name="split_strategy" value="|" />
</filter>

results matching ""

    No results matching ""