当前位置:文档之家› EOS 6.0构件库参考手册

EOS 6.0构件库参考手册

EOS 6.0构件库参考手册
EOS 6.0构件库参考手册

PRIMETON TECHNOLOGIES, LTD.

上海普元信息技术有限责任公司

EOS6构件库设计

No part of this document may be reproduced, stored in any electronic retrieval system, or transmitted in any form or by any means, mechanical, photocopying, recording, otherwise, without the written permission of the copyright owner.

COPYRIGHT 2003 by Primeton Technologies, Ltd. ALL RIGHTS RESERVED.

文档修订和审批记录

目录

1.引言 (8)

1.1.目的 (8)

1.2.简介 (8)

1.3.命名名词解释表 (8)

1.4.调用参数说明 (8)

2.总线及SDO数据操作类 (9)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.data.DataContextUtil (9)

2.1.1.构件包说明 (9)

2.1.2.运算逻辑构件使用说明 (10)

2.1.3.deleteObject:删除数据 (10)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.data.DataObjectUtil (11)

2.2.1.构件包说明: (11)

2.2.2.运算逻辑构件使用说明 (11)

2.2.3.checkEntityName:判断entity name是否为指定值 (11)

2.2.4.isDataType:是否为DataType (12)

2.2.5.sort:对DataObject的集合进行排序 (14)

2.2.6.createDataObject:创建DataObject对象 (15)

2.2.7.getEntityName:获取SDO对象的实体名 (16)

2.2.8.appendObject:在DataObject数组之后添加一个元素 (17)

2.2.9.insertObjectToArray:往DataObject数组插入一个元素 (17)

3.数据库操作类 (18)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.database.DatabaseUtil (18)

3.1.1.构件包说明: (18)

3.1.2.运算逻辑构件使用说明 (18)

3.1.3.insertEntity:插入一条记录 (20)

3.1.4.insertEntityBatch:插入多条记录 (20)

3.1.5.updateEntity:更新一条记录 (21)

3.1.6.updateEntityBatch:更新多条记录 (22)

3.1.7.updateEntityByTemplate:根据SDO数据模板查询条件更新记录 (22)

3.1.8.updateEntityByCriteriaEntity:根据查询实体更新记录 (23)

3.1.9.saveEntity:保存一条记录 (24)

3.1.10.saveEntities:保存多条记录 (24)

3.1.11.deleteEntity:删除一条记录,会自动删除关联记录 (25)

3.1.12.deleteEntityBatch:删除多条记录,不自动处理级联关系 (26)

3.1.13.deleteByTemplate:根据SDO数据模板查询条件删除记录 (26)

3.1.14.deleteByCriteriaEntity:根据查询条件实体删除记录 (27)

3.1.15.expandEntity:根据主键扩展查询一条记录 (28)

3.1.16.expandEntityWithLock:根据主键扩展记录,并锁定 (28)

3.1.17.expandRelation:扩展一个数据实体对象的一个关联属性 (29)

3.1.18.expandEntitiesRelation:扩展一个数据实体数组中每个实体对象的一个关联属性 (30)

3.1.19.getRelationEntity:根据数据实体对象的关联属性获得关联实体对象

31

3.1.20.getRelationEntities:根据数据实体对象的关联属性获得关联实体对象数组31

3.1.21.queryEntitiesByTemplate:根据SDO数据模板查询条件查询所有记录

32

3.1.22.queryEntitiesByTemplate:根据SDO数据模板查询条件查询部分记录

33

3.1.23.queryEntitiesByCriteriaEntity:根据查询条件实体查询部分记录 (34)

3.1.24.queryEntitiesByCriteriaEntity:根据查询条件实体查询所有记录 (34)

3.1.25.count:根据查询条件实体条件统计记录数 (35)

3.1.26.countByTemplate:根据SDO数据模板查询条件统计记录数 (36)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.database.DatabaseExt (36)

3.2.1.构件包说明: (36)

3.2.2.运算逻辑构件使用说明 (37)

3.2.3.getNextSequence:根据名称获得序列号值 (37)

3.2.4.setSequenceValue:强制把某个序列号对应的sequence设值 (38)

https://www.doczj.com/doc/f410487438.html,monQueryWithPage:通用分页查询 (39)

3.2.6.queryEntitiesByTemplateWithPage:根据SDO数据模板查询条件分页查询39

3.2.7.queryEntitiesByCriteriaEntityWithPage:根据查询条件实体分页查询 40 3.2.8.queryByNamedSql:根据namedsql语句查询所有 (41)

3.2.9.queryByNamedSql:根据namedsql语句查询部分 (41)

3.2.10.countByNamedSql:根据namedsql语句统计查询结果总记录数 (42)

3.2.11.queryByNamedSqlWithPage:根据namedsql语句进行分页查询 (43)

3.2.12.executeNamedSql:执行namedsql语句 (44)

3.2.13.lockEntity:根据主键锁定一条记录 (44)

3.2.14.getPrimaryKey:获取持久化实体主键的序列号的值 (45)

3.2.15.insertEntityCascade:级联方式新增一条记录 (45)

3.2.16.deleteEntityCascade:级联方式删除一条记录 (46)

3.2.17.updateEntityCascade:级联方式更新一条记录 (47)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.database.Pagination (47)

3.3.1.构件包说明: (47)

3.3.2.运算逻辑构件使用说明 (48)

3.3.3.doQueryNameSqlPageCond:根据命名sql 通过分页SDO Pagecond进行分页查询 (48)

3.3.4.doQueryPageCond:根据查询条件实体或者SDO数据模板查询条件通过分页SDO Pagecond进行分页查询 (49)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.database.CriteriaUtil (49)

3.4.1.构件包说明: (49)

3.4.2.运算逻辑构件使用说明 (50)

3.4.3.appendExpr:给查询实体增加一个查询条件 (50)

3.4.4.removeExpr:删除查询条件实体中对某个字段的查询条件 (51)

3.4.5.setSelectField:设置查询条件实体中的查询字段,会将原来已经设置的所有字段删除掉 (52)

3.4.6.appendSelectField:增加查询条件实体中的查询字段 (53)

3.4.7.removeSelectField:删除查询条件实体中的查询字段 (54)

3.4.8.removeAllSelectField:删除查询条件实体中所有查询字段 (55)

3.4.9.translateTemplate2CriteriaEntity:将SDO数据查询模板转换为查询条件实体查询条件 (55)

3.4.10.translateTemplate2Criteria:将SDO数据查询模板转换为hibernate criteria 56

3.4.11.translateCriteriaEntity2Criteria:将查询条件实体转换为hibernate criteria 57

4.EOS基础构件类 (57)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.eoscommons.LogUtil (58)

4.1.1.构件包说明: (58)

4.1.2.运算逻辑构件使用说明 (58)

4.1.3.logInfo:记信息日志 (58)

4.1.4.logDebug:记调试日志 (59)

4.1.5.logWarn:记警告日志 (60)

4.1.6.logError:记错误日志 (60)

4.1.7.logFatal:记致命错误日志 (61)

4.1.8.logI18NInfo:记国际化信息日志 (61)

4.1.9.logI18NDebug:记国际化调试日志 (62)

4.1.10.logI18NWarn:记国际化警告日志 (63)

4.1.11.logI18NError:记国际化错误日志 (64)

4.1.12.logI18NFatal:记国际化致命错误日志 (64)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.eoscommons.ScheduleUtil (65)

4.1.13.构件包说明: (65)

4.1.14.运算逻辑构件使用说明 (65)

4.1.15.add:添加定时器 (65)

4.1.16.remove:删除定时器 (66)

4.1.17.update:更新定时器 (67)

4.1.18.pause:暂停 (67)

4.1.19.resume:继续 (68)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.eoscommons.ContributionConfigUtil (69)

4.1.20.构件包说明: (69)

4.1.21.运算逻辑构件使用说明 (69)

4.1.22.getConfigValue:获取构建包配置信息 (69)

https://www.doczj.com/doc/f410487438.html,.eos.foundation.eoscommons.BusinessDictUtil (71)

4.1.23.构件包说明: (71)

4.1.24.运算逻辑构件使用说明 (71)

4.1.25.reLoad:重载业务字典 (71)

4.1.26.appendFieldByDict类型:根据字典码为DataObject批量添加一个字典名称字段 (72)

4.1.27.getDictName:获取字典名称 (72)

https://www.doczj.com/doc/f410487438.html,ng.FileUtil (73)

5.1.1.构件包说明: (73)

5.1.2.运算逻辑构件使用说明 (73)

5.1.3.copyFile:复制一个文件 (74)

5.1.4.copyLarge:复制超过2GB的文件 (74)

5.1.5.copyDirectoryTree:递归复制目录 (75)

5.1.6.copyDirectory:复制目录(可根据通配符筛选,不包括子目录) (76)

5.1.7.deleteFile:删除文件 (76)

5.1.8.deleteDirectory:删除指定目录下所有满足通配符条件的文件 (77)

5.1.9.deleteDirectoryTree:删除指定目录及该目录下所有文件和子目录 (77)

5.1.10.mkDir:新建目录(包括子目录) (78)

5.1.11.moveFile:移动文件 (79)

5.1.12.moveDirectoryTree:移动目录 (79)

5.1.13.moveDirectory:移动目录(可根据通配符筛选,不包括子目录) 80 5.1.14.listFiles:得到某个目录下的文件列表 (80)

https://www.doczj.com/doc/f410487438.html,ng.DateUtil (81)

5.2.1.构件包说明: (81)

5.2.2.运算逻辑构件使用说明 (81)

5.2.3.stringToDate:将字符串按指定格式转成Date对象 (81)

5.2.4.dateToString:将Date对象转成指定格式的字符串 (82)

5.2.5.getSysDateString:按指定格式获取系统时间的字符串 (83)

https://www.doczj.com/doc/f410487438.html,ng.StringUtil (83)

5.3.1.构件包说明: (83)

5.3.2.运算逻辑构件使用说明 (83)

5.3.3.addPrefix:用指定字符在左边把字符串补齐到指定长度 (84)

5.3.4.addPostfix:用指定字符在右边把字符串补齐到指定长度 (85)

https://www.doczj.com/doc/f410487438.html,bineStrings:将字符串数组或List转成按指定分隔符连接起来的字符串86

5.3.6.concat:将String值依次连接起来 (86)

5.3.7.split:按指定分隔符把字符串分成数组 (87)

5.3.8.replace:替换所有与给定字符相等的字符 (87)

5.3.9.replace:替换所有与给定串字面值相等的字符串 (88)

5.3.10.replaceAll:替换所有满足匹配给定的正则表达式的字符串 (89)

5.3.11.substring:从开始位置截取字符串 (90)

5.3.12.substring:按起止位置截取字符串 (90)

5.3.13.isNumEx:判断字符串是否为实数 (91)

https://www.doczj.com/doc/f410487438.html,ng.PasswordUtil (92)

5.4.1.构件包说明: (92)

5.4.2.运算逻辑构件使用说明 (92)

5.4.3.encryptByMD5:使用MD5加密 (92)

5.4.4.encryptBySHA:使用SHA加密 (93)

5.4.5.encryptByDES:使用DES加密 (93)

5.4.6.decryptByDES:使用DES解密 (94)

6.1.Quartz的Cron-表达式说明 (95)

6.1.1.基本概念 (95)

6.1.2.表达式举例 (96)

1.引言

1.1. 目的

为方便EOS6程序员又快又好的开发出灵活多变的EOS应用,在旧产品和实际项目开发的经验总结上EOS技术小组整理出了本构件设计方案。

1.2. 简介

好比复杂多变的物质世界由最基本的100来种元素组成一样,各种各样的业务系统也是由十分有限的基础构件组成的。本方案暂只涉及了基本的六类基础构件,分别为:总线及SDO数据操作类、数据库操作类、文件处理类、通讯工具类、Java基础构件类、EOS基础构件类。

1.3. 命名名词解释表

1.4. 调用参数说明

运算逻辑的参数值类别有三种:

a)常量

可以是某个变量的名称,也可以是某个xpath所指向的变量,但前提是必须满足变量类型和参数类型保持一致。

c)表达式

可以为任意一段合法的java表达式。

2.总线及SDO数据操作类

功能概述:

这部分构件主要是用来操作数据总线,和SDO数据对象。

包括的主题:

总线操作类DataContextUtil

SDO数据操作类DataObjectUtil

2.1. com.eos.foundation.data.DataContextUtil

2.1.1. 构件包说明

功能概述:

本工具类实现了对数据总线数据的操作。

2.1.2. 运算逻辑构件使用说明

2.1.

3. deleteObject:删除数据

【功能说明】

用来从数据总线上删除多个xpath对应的SDO对象。

【版本说明】

从EOS6.0开始提供。

【引用路径】

1) 本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataContextUtil.deleteObject,包含在

com.eos.foundation.jar中。

2) 运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:待删除数据的xpath值。可通过运算逻辑属性窗口增加多个xpath,因为该参数为变参。

3) 返回值说明

无。

4) 抛出异常说明

无。

【参考案例】

1) 示例1:从数据上下文中删除acc/accountId。

b. 调用前的bizContext

1

c. 调用后的bizContext

2.2. com.eos.foundation.data.DataObjectUtil

2.2.1. 构件包说明:

功能概述:

本工具类实现了对DataObject对象的操作处理。

2.2.2. 运算逻辑构件使用说明

2.2.

3. checkEntityName:判断entity name是否为指定值

【功能说明】

用来把一个SDO的实体名与指定字符串相比较。

【版本说明】

从EOS6.0开始提供。

【引用路径】

1) 本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.checkEntityName,包含在

com.eos.foundation.jar中。

2) 运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:SDO对象。

参数2:SDO名称。

3)

4)

无。

【参考案例】

1) 示例1:判断对象acc的实体名与com.eos.foundation.test.Account是否相等。

b. 调用前的bizContext

1

c. 调用后的bizContext

(不变)

d. 返回值:true

2.2.4. isDataType:是否为DataType

【功能说明】

用来判断SDO对象属性的type是否为DataType。

【版本说明】

从EOS6.0开始提供。

【引用路径】

1) 本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.isDataType,包含在

com.eos.foundation.jar中。

2) 运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:SDO对象。

参数2:属性名。

3)

4)

无。

【参考案例】

1) 示例1:判断acc对象的accountId属性的类型是否为DataType。

b. 调用前的bizContext

1

c. 调用后的bizContext

(不变)

d. 返回值:true

2.2.5. sort:对DataObject的集合进行排序

【功能说明】

用来把SDO数组或List按某个属性的值进行排序。

【版本说明】

从EOS6.0开始提供。

【引用路径】

1) 本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.sort,包含在com.eos.foundation.jar

中。

2) 运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:由DataObject对象组成的数组或者List。

参数2:属性名。

参数3:升降序。升序为true,降序为false。

3)

4)

无。

【参考案例】

1) 示例1:把SDO数组按某个属性进行降序排序

b. 调用前的bizContext

__type="sdo:com.eos.foundation.test.Account">

1

1

测试专用帐户

1000

__type="sdo:com.eos.foundation.test.Account">

6

1

测试专用帐户

1000

__type="sdo:com.eos.foundation.test.Account">

7

1

测试专用帐户

1000

c. 调用后的bizContext

__index="2" __type="sdo:com.eos.foundation.test.Account">

7

1

测试专用帐户

1000

__index="3" __type="sdo:com.eos.foundation.test.Account">

6

1

测试专用帐户

1000

__index="4" __type="sdo:com.eos.foundation.test.Account">

1

1

测试专用帐户

1000

d. 返回值:排序后的数组

2.2.6. createDataObject:创建DataObject对象

【功能说明】

用来根据实体名创建一个SDO对象。

【版本说明】

从EOS6.0开始提供。

【引用路径】

3) 本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.createDataObject,包含在

com.eos.foundation.jar中。

4) 运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:数据实体名。

3)

4)

无。

【参考案例】

2.2.7. getEntityName:获取SDO对象的实体名

【功能说明】

用来获取SDO对象名称。

【版本说明】

从EOS6.0开始提供。

【引用路径】

本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.getEntityName,包含在

com.eos.foundation.jar中。

运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:SDO对象。

3)

2.2.8. appendObject:在DataObject数组之后添加一个元素

【功能说明】

用来在SDO对象数组末尾添加一个SDO对象。

【版本说明】

从EOS6.0开始提供。

【引用路径】

本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.appendObject,包含在

com.eos.foundation.jar中。

运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:SDO数组。

参数2:待插入的SDO对象。

3)

2.2.9. insertObjectToArray:往DataObject数组插入一个元素

【功能说明】

用来向SDO数组指定位置添加一个SDO对象。

【版本说明】

从EOS6.0开始提供。

【引用路径】

本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DataObjectUtil.insertObjectToArray,包含在

com.eos.foundation.jar中。

运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:SDO数组。

参数2:SDO对象。

参数3:插入位置。

3)

3.数据库操作类

功能概述:

这部分构件主要是用来对数据库的访问和更新操作。

包括的主题:

基本操作类DatabaseUtil

扩展操作类DatabaseExt

分页查询处理类Pagination

查询条件操作类CriteriaUtil

3.1. com.eos.foundation.database.DatabaseUtil 3.1.1. 构件包说明:

功能概述:

本工具类实现了基本的数据库操作。

3.1.2. 运算逻辑构件使用说明

3.1.3. insertEntity:插入一条记录

【功能说明】

用来把一个SDO对象的值保存到数据库相应的实体表中。

【版本说明】

从EOS6.0开始提供。

【引用路径】

本运算逻辑构件对应JAVA方法路径:

com.eos.foundation.data.DatabaseUtil.insertEntity,包含在

com.eos.foundation.jar中。

运算逻辑定义在构件包com.eos.foundation中。

【使用说明】

1)

2)

参数1:数据源名称。

参数2:SDO对象。

3) 返回值说明

无。

4) 抛出异常说明

a. 插入出错时抛出com.eos.system.exception.EOSRuntimeException。【参考案例】

3.1.

4. insertEntityBatch:插入多条记录

【功能说明】

用来把一个SDO对象数组的值保存到数据库相应的实体表中。

【版本说明】

从EOS6.0开始提供。

相关主题
文本预览
相关文档 最新文档