AFA4J参数内存化使用说明书Word文件下载.docx

上传人:b****1 文档编号:13294712 上传时间:2022-10-09 格式:DOCX 页数:8 大小:35.58KB
下载 相关 举报
AFA4J参数内存化使用说明书Word文件下载.docx_第1页
第1页 / 共8页
AFA4J参数内存化使用说明书Word文件下载.docx_第2页
第2页 / 共8页
AFA4J参数内存化使用说明书Word文件下载.docx_第3页
第3页 / 共8页
AFA4J参数内存化使用说明书Word文件下载.docx_第4页
第4页 / 共8页
AFA4J参数内存化使用说明书Word文件下载.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

AFA4J参数内存化使用说明书Word文件下载.docx

《AFA4J参数内存化使用说明书Word文件下载.docx》由会员分享,可在线阅读,更多相关《AFA4J参数内存化使用说明书Word文件下载.docx(8页珍藏版)》请在冰豆网上搜索。

AFA4J参数内存化使用说明书Word文件下载.docx

警告、说明等提示等内容一律用楷体,并且在内容前后增加线条与

正文隔离。

屏幕显示描述:

对于来自屏幕的显示信息,采用如下格式:

英文CourierNew,中文宋体,文字大小为小四号;

信息中夹杂的用户从终端输入的信息,使用加粗字体表示。

2、各类标志

本书还采用各种醒目标志来表示在操作过程中应该特别注意的地方,这些标志意义如下:

警告、危险、提醒操作中应注意的事项。

说明、注意、提醒操作中应注意的事项。

变更记录

序号

修改内容

页号

修改人

完成日期

1

2

3

4

5

6

注:

对该文件内容增加、删除或修改均需填写此变更记录,详细记载变更信息,以保证其可追溯性。

第一章基础平台

1.1应用概述

为提高常用参数获取速度(特别是那些与业务无关的,很少发生变化的参数),减少数据库或配置文件IO操作次数,通过内存预加载的方式,像访问内存一样从数据库获取参数。

参数以XML格式文件的形式存储,AFA4J平台将该文件解析存储进内存中,在内存中参数以一个二维Map数据结构的形式组织起来。

形式如下:

Map<

String,Map<

String,String>

>

第一维的Map对应SYSID和该SYSID下的KEY-VALUE,第二维的Map则对应特定SYSID下的参数KEY和参数VALUE。

AFA4J提供了从数据库导出参数到XML文件的工具,使用说明参见本文档第三章数据库参数导出工具使用说明。

参数一旦加载,中途不可卸载,但支持参数重新加载。

工作组与工作组之间的参数资源相互隔离,互不干扰。

单个工作组支持配置多个参数源文件。

在AFAIDE中进行应用开发时可根据__REQ__[‘__MFFLG__’]的值来判断是否以内存化的方式去参数,如果值为”1”,则使用内存模式,值为”0”则采用数据库模式.

1.2配置说明

配置文件platform.xml中关于参数内存化配置的形式如下所示:

参数内存化配置:

<

paramMemorize>

<

usable>

true<

/usable>

paramSources>

paramSource>

${afahome}/conf/platform/paramsrc/paramsrc001.xml<

/paramSource>

<

${afahome}/conf/platform/paramsrc/paramsrc002.xml<

${afahome}/conf/platform/paramsrc/paramsrc003.xml<

/paramSources>

/paramMemorize>

表1-1参数内存化配置说明

配置名

功能

说明

usable

参数内存化开关

true—开启

false—关闭

paramSource

参数源文件路径,支持多个参数源。

支持在路径中使用${afahome}获取工作空间根目录

1.3功能说明

1.3.1开关切换

AFA4J平台启动时,如果在platform.xml文件中有参数内存化的配置并且开关为true,则加载指定参数源到内存中,否则则不加载。

AFA4J在运行时支持通过修改配置的方式中途初始加载或重新加载参数,加载的条件是当开关由falsetrue时。

已加载在内存中的参数不能被卸载,只能被替换。

亦即当修改配置文件把开关由true置为false时,此时__REQ__[“__MFFLG__”]值为”0”,应当以查询数据库的方式取得参数,但内存中的参数依然存在,实际上可以从内存中取参数,不建议在开关切换为false后依然使用内存的方式获取方式,因为在开关由truefalsetrue这一过程中,参数源可能发生人为修改,AFA4J不保证取得的参数具有时效性。

之所以使内存中的参数在开关由true置为false时不被卸载,是为了保证在切换开关时还没执行完毕的交易能够正常执行完毕。

1.3.2指定编码

参数源XML文件的文件头encoding指定的编码即该文件所有参数存储在内存中的编码。

数据库参数导出小工具支持在导出参数到XML文件时,将数据库里参数的字符串编码记录在XML文件头的encoding里。

参见数据库导出小工具配置说明。

1.3.3资源隔离

AFA4J允许各个工作组配置各自的参数源,在运行时保证资源的隔离,不会相互干扰。

1.3.4组件支持

AFA4J提供了从内存中取参数的组件AFAParamMemorize.getParam(Stringsysid,Stringkey);

参数说明:

Sysid:

应用id

Key:

参数key

具体使用方法请参见AFAIDE开发示例。

第二章AFAIDE开发

二.1开发示例

在AFAIDE环境下首先判断__REQ__[“__MFFLG__”]的值,若为”1”,则从内存中去参数,若为”0”,去从数据库中取数据。

开发步骤如下所示:

开发步骤:

a)

fromAFAParamMemorizeimportgetParam;

在python文件中引入AFAParamMemorize模块

b)调用getParam,把相应的sysid和key作为入参

#说明:

P_GetRecordByDB为从视图中获取参数的组件

if(__REQ__[‘__MFFLG__’][0]==‘1’):

#若为”1”则调用getParam从内存中取

ret=getParam(sysid,key);

if(ret[0]!

=1):

#如果内存中取不到参数则从数据库中取

ret=P_GetRecordByDB(sysid,key);

if(ret[0]!

return[0,”xxx”,”无此参数”];

else

returnret;

else#若不为”1”则默认从数据库中取

returnP_GetRecordByDB(sysid,key)

返回值ret为一个PyList,若参数获取成功,则该PyList为[1,None,None,[value,]],value即为所取得的参数。

若参数获取失败,则该PyList为[0,ErrorCode,ErrorMsg]。

ErrorCode为错误代码,ErrorMsg为错误信息。

第三章数据库参数导出工具使用说明

三.1配置说明

配置文件的形式如下所示:

config>

databasetype="

oracle"

name="

AFA"

userName>

ibpsdev<

/userName>

password>

aWJwc2Rldg==<

/password>

url>

jdbc:

oracle:

thin:

@192.168.0.5:

1521:

afa<

/url>

driverClass>

oracle.jdbc.driver.OracleDriver<

/driverClass>

encoding>

GBK<

/encoding>

schema>

ORACLE<

/schema>

outputFileName>

output.xml<

/outputFileName>

tablename="

test_sqlite"

<

sysidReflection>

SYSID<

/sysidReflection>

keyReflection>

KEY<

/keyReflection>

valueReflection>

VALUE<

/valueReflection>

specificSysidList>

<

specificSysid>

xxxxxxxxxx482<

/specificSysid>

xxxxxxxxxx483<

xxxxxxxxxx484<

xxxxxxxxxx485<

xxxxxxxxxx486<

/specificSysidList>

/table>

/database>

/config>

三.1.1database节点配置说明

表3-1database节点配置说明

元素名/属性名

type

指定数据库类型

目前支持oracle,db2以及mysql

name

数据库名

username

数据库用户名

password

数据库密码

通过base64加密后的密码

url

数据库连接Url

Jdbc方式

driverClass

Jdbc驱动类

encoding

指定存放到内存时的字符串编码

该编码将被记录在输出xml文件的文件头,加载参数进内存前将依据该编码对字符串进行编码

schema

用户schema

支持db2的schema机制,oracle和mysql不需要。

outputFileName

输出文件路径

table

指定被导出数据所在的表

参考数据所在表table配置说明

三.1.2table节点配置说明

表3-2table节点配置说明

表名

sysidReflection

应用ID在表中的映射字段

keyReflection

参数键在表中的映射字段

valueReflection

参数只在表中的映射字段

specificSysidList

指定特定应用ID

该节点为可选节点,若配置了该节点,则仅导出指定应用ID的参数,若没有配置该节点,则默认导出所有应用ID的参数。

三.2使用示例

本工具以名为export-tool.rar压缩包的形式分发和使用,解压缩后的文件列表如下图所示:

该工具预先内置了oracle,db2和mysql数据库jdbc连接驱动,使用者应根据不同的数据库类型指定连接驱动的classpath或者根据实际情况替换驱动文件。

运行方法如下:

在windows环境下,编辑run.bat文件,指定数据库连接驱动路径和导出配置XML文件的地址。

保存后退出。

双击执行run.bat文件。

在类UNIX环境下,编辑run.sh文件,指定数据库连接驱动路径和导出配置XML文件的地址。

命令行执行./run.sh。

@echooff

rem----------------------------------------------------------------------------

rem

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1