EOS Low-Code Platform 8 EOS Low-Code Platform 8
产品简介
学习指南
更新说明
安装与集成
初见EOS
低代码开发手册
专业代码开发手册
专题场景实战
公共服务框架
应用运行治理
升级手册
常见问题
  • com.primeton.gocom.afcenter.common.dao.DatabaseDao
  • 构件包说明
  • 运算逻辑构件使用说明
  • getDao:获取指定数据源的DAO
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • newEntity:创建一个实体
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • newCb:创建一个CriteriaBuilder对象实体
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getPrimaryKeyNames:获取主键名称列表
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getPrimaryKey:获取主键序列号的值
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getPrimaryKey:获取主键序列号的值
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getEntity:根据主键扩展查询一条记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getEntityByKey:根据主键查询一条记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getEntityByProperty:使用属性查询一条记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getEntityByCriteriaBuilder:使用查询条件查询一条记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • getEntityByTemplate:使用模板查询的一条记录填充T,并返回满足模板条件的记录数
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • expandRelation:扩展一个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • expandRelations:扩展一个或多个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • expandAllRelations:扩展查询所有关联(1:N)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • expandAllRelations:查询所有关联(1:N)并指定关联深度
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByKey:根据主键查询实体
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByProperty:根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByProperty:根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByPropertyWithPage:根据SDO数据模板查询条件分页查询所有记录,会查询Entity的所有字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByCriteriaBuilder:根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByCriteriaBuilder:根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByCriteriaBuilderWithPage:根据查询条件分页查询所有记录,根据查询条件实体指定查询Entity的字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByTemplate:根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByTemplate:根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryEntitiesByTemplateWithPage:根据SDO数据模板查询条件分页查询部分记录,会查询Entity的所有字段
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • countByEntity:根据实体统计记录数
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • countByKey:根据实体统计记录数。(单主键)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • countByProperty:根据属性统计记录数
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • countByCriteriaBuilder:根据查询条件条件统计记录数
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • countByTemplate:根据SDO数据模板查询条件统计记录数
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • insertEntity:插入一条或多条记录自动设置用户和时间,自动生成主键
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • insertEntityCascade:级联插入记录。(自动设置用户和时间,自动生成主键)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • insertEntity:插入记录。(不自动生成主键,不级联)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • updateEntity:更新记录。(自动设置用户和时间,不级联)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • updateEntityCascade:级联更新记录。(自动设置用户和时间)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • updateEntity:更新记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • saveEntity:保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,自动生成主键,不级联)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • saveEntityCascade:级联保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • saveEntity:保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键,不级联)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntity:根据主键删除记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntityCascade:根据主键级联删除记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntity:根据主键删除记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntityByKey:根据主键删除一条记录,如果T中有非主键的属性值,将根据主键查询出来覆盖原来的属性。(单主键)
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntityByProperty:根据属性条件批量删除
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntityByCriteriaBuilder:根据查询条件删除记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntityByCriteriaBuilder:根据查询条件删除记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • deleteEntityByTemplate:根据SDO数据模板查询条件删除记录
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryByNamedSql:根据命名sql查询
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryByNamedSql:根据命名sql查询
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • queryByNamedSqlWithPage:根据命名sql分页查询
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • executeByNamedSql:执行命名sql
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】
  • executeByNamedSqlBatch:批量执行命名sql
  • 【功能说明】
  • 【版本说明】
  • 【引用路径】
  • 【使用说明】

# com.primeton.gocom.afcenter.common.dao.DatabaseDao

# 构件包说明

该运算逻辑类基于 EOS 框架实现,提供对 SDO 实体的基本数据库操作。它默认根据 SDO 实体的配置自动获取数据源,并支持在 AFCENTER 平台中配置的数据权限控制。通过该类进行的数据库操作,能够确保所有数据权限规则得到正确应用。

# 运算逻辑构件使用说明

序号 方法 功能描述
1 getDao(String datasourceName) 获取某一个数据源的DAO
2 newEntity(String entityName, Object fromObj) 创建一个实体
3 newCb(Object entityNameOrSdoOrType) 根据SDO实体信息创建一个CriteriaBuilder
4 getPrimaryKeyNames(String entityName) 获取主键名称列表
5 getPrimaryKey(E entity) 获取主键序列号的值
6 getPrimaryKey(E entity, boolean isForce, String keyPrefix) 获取主键序列号的值
7 getEntity(E entity) 根据主键扩展查询一条记录
8 getEntityByKey(String entityName, Object keyValues) 根据主键查询一条记录
9 getEntityByProperty(String entityName, Object... propertyNameAndValues) 使用属性查询一条记录
10 getEntityByCriteriaBuilder(CriteriaBuilder cb) 使用查询条件查询一条记录
11 getEntityByTemplate(E template) 使用模板查询的一条记录填充T,并返回满足模板条件的记录数
12 expandRelation(E entity, String... propertyNames) 扩展一个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询
13 expandRelations(Object entityOrCollectionOrArray, String... propertyNames) 扩展一个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询
14 expandAllRelations(Object entityOrCollectionOrArray) 查询所有关联(1:N)
15 expandAllRelations(Object entityOrCollectionOrArray, int deep) 查询所有关联(1:N)并指定关联深度
16 expandLobProperty(E entity, String... lobPropertyNames) 扩展一个数据实体对象的一个lob属性(如对一个懒加载的属性),会进行数据库的查询
17 queryEntitiesByKey(String entityName, Object keyValues) 根据主键查询实体
18 queryEntitiesByProperty(String entityName, Object... propertyNameAndValues) 根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段
19 queryEntitiesByProperty(int begin, int length, String entityName, Object... propertyNameAndValues) 根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段
20 queryEntitiesByPropertyWithPage(int pageIndex, int pageSize, String entityName, Object... propertyNameAndValues) 根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段
21 queryEntitiesByCriteriaBuilder(CriteriaBuilder cb) 根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段
22 queryEntitiesByCriteriaBuilder(CriteriaBuilder cb, int begin, int length) 根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段
23 queryEntitiesByCriteriaBuilderWithPage(CriteriaBuilder cb, int pageIndex, int pageSize) 根据查询条件分页查询所有记录,根据查询条件实体指定查询Entity的字段
24 queryEntitiesByTemplate(E template) 根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段
25 queryEntitiesByTemplate(E template, int begin, int length) 根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段
26 queryEntitiesByTemplateWithPage(E template, int pageIndex, int pageSize) 根据SDO数据模板查询条件分页查询部分记录,会查询Entity的所有字段
27 countByEntity(E entity) 根据实体统计记录数
28 countByKey(String entityName, Object keyValues) 根据实体统计记录数。(单主键)
29 countByProperty(String entityName, Object... propertyNameAndValues) 根据属性统计记录数
30 countByCriteriaBuilder(CriteriaBuilder cb) 根据查询条件条件统计记录数
31 countByTemplate(E template) 根据SDO数据模板查询条件统计记录数
32 insertEntity(Object entityOrCollectionOrArray) 插入记录
33 insertEntityCascade(Object entityOrCollectionOrArray) 级联插入记录。(自动设置用户和时间,不自动生成主键)
34 insertEntity(Object entityOrCollectionOrArray, boolean isSetUserAndTime, boolean isAutoSetPrimary, int cascadeDeep) 插入记录。(不自动生成主键,不级联)
35 updateEntity(Object entityOrCollectionOrArray) 更新记录。(自动设置用户和时间,不级联)
36 updateEntityCascade(Object entityOrCollectionOrArray) 级联更新记录。(自动设置用户和时间)
37 updateEntity(Object entityOrCollectionOrArray, boolean isSetUserAndTime, int cascadeDeep, boolean isPartUpdate) 更新记录
38 saveEntity(Object entityOrCollectionOrArray) 保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键,不级联)
39 saveEntityCascade(Object entityOrCollectionOrArray) 级联保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键)
40 saveEntity(Object entityOrCollectionOrArray, boolean isSetUserAndTime, boolean isAutoSetPrimary, int cascadeDeep, boolean isPartUpdate) 保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键,不级联)
41 deleteEntity(Object entityOrCollectionOrArray) 根据主键删除记录
42 deleteEntityCascade(Object entityOrCollectionOrArray) 根据主键级联删除记录
43 deleteEntity(Object entityOrCollectionOrArray, int cascadeDeep) 根据主键删除记录
44 deleteEntityByKey(String entityName, Object keyValues) 根据主键删除一条记录,如果T中有非主键的属性值,将根据主键查询出来覆盖原来的属性。(单主键)
45 deleteEntityByProperty(String entityName, Object... propertyNameAndValues) 根据属性条件批量删除
46 deleteEntityByCriteriaBuilder(CriteriaBuilder cb) 根据查询条件删除记录
47 deleteEntityByCriteriaBuilder(CriteriaBuilder cb, boolean mustWhereCondition) 根据查询条件删除记录
48 deleteEntityByTemplate(E template) 根据SDO数据模板查询条件删除记录
49 queryByNamedSql(String nameSqlId, Object parameterObject) 根据命名sql查询
50 queryByNamedSql(String nameSqlId, Object parameterObject, int begin, int length) 根据命名sql查询
51 queryByNamedSqlWithPage(String nameSqlId, Object parameterObject, int pageIndex, int pageSize) 根据命名sql分页查询
52 executeByNamedSql(String nameSqlId, Object parameterObject) 执行命名sql
53 executeByNamedSqlBatch(String nameSqlId, Object parameterObjectCollectionOrArray) 批量执行命名sql

# getDao:获取指定数据源的DAO

# 【功能说明】

根据数据源名称获取该数据源的dao,以用于后续对该数据源表执行数据库操作。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getDao,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 datasourceName String 数据源名称
返回值 AbstractDatabaseDao AbstractDatabaseDao 数据源dao
  1. 调用示例
AbstractDatabaseDao dao = DatabaseDao.getDao(datasourceName);

pubilc static <E extends DataObject> PageResultList<E> queryWithPage(CriteriaBuilder cb, int pageIndex, int pageSize) {
		return cb.dao(dao).queryWithPage(pageIndex, pageSize);
	}

# newEntity:创建一个实体

# 【功能说明】

根据实体名称创建该SDO实体,并将源数据实体中的属性映射到SDO实体中。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.newEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体名称
参数 fromObj Object 源数据对象
返回值 DataObject DataObject DataObject实体
  1. 调用示例
//这个源数据对象以Map示例
Map<String, Object> params = new HashMap<>();
params.put("name","张三");
params.put("code","zs");
String entityName = "com.primeton.gocom.afcenter.model.org.Employee";

Employee employee = DatabaseDao.newEntity(entityName, params)

# newCb:创建一个CriteriaBuilder对象实体

# 【功能说明】

根据实体名或SDO实体或实体类型称创建一个CriteriaBuilder对象实体,以用于后续对该数据源表执行数据库操作。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.newCb,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityNameOrSdoOrType Object 实体名称或SDO实体或实体类型
返回值 CriteriaBuilder CriteriaBuilder CriteriaBuilder实体
  1. 调用示例
String entityName = "com.primeton.gocom.afcenter.model.org.Employee";

CriteriaBuilder cb = DatabaseDao.newCb(entityName);
cb.dao(getDao()).queryWithPage(pageIndex, pageSize);

# getPrimaryKeyNames:获取主键名称列表

# 【功能说明】

根据实体名查询SDO实体主键,返回一个主键列表。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getPrimaryKeyNames,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体名称
返回值 keyNames String[] 主键数组
  1. 调用示例
String entityName = "com.primeton.gocom.afcenter.model.org.Employee";

String[] keyNames = DatabaseDao.getPrimaryKeyNames(entityName);

# getPrimaryKey:获取主键序列号的值

# 【功能说明】

为SDO实体生成一个主键值。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getPrimaryKey,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entity DataObject SDO实体
返回值 DataObject DataObject SDO实体
  1. 调用示例
Employee employee = Employee.FACTORY.create();

DatabaseDao.getPrimaryKey(employee);

# getPrimaryKey:获取主键序列号的值

# 【功能说明】

获取SDO的主键的序列号的值。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getPrimaryKey,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entity DataObject SDO实体
参数 isForce boolean 是否强制生成主键
参数 keyPrefix String 主键前缀
返回值 DataObject DataObject SDO实体
  1. 调用示例
Employee employee = Employee.FACTORY.create();

DatabaseDao.getPrimaryKey(employee, false, "afc-");

# getEntity:根据主键扩展查询一条记录

# 【功能说明】

根据主键扩展查询一条记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entity DataObject 业务实体
返回值 DataObject DataObject SDO实体
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setId("1");

employee = DatabaseDao.getEntity(employee);

# getEntityByKey:根据主键查询一条记录

# 【功能说明】

根据主键扩展查询一条记录,如果T中有非主键的属性值,将根据主键查询出来覆盖原来的属性。(单主键)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getEntityByKey,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体名称
返回值 keyValues Object 主键值
  1. 调用示例
String entityName = "com.primeton.gocom.afcenter.model.org.Employee";
Employee employee = DatabaseDao.getEntityByKey(entityName, "1");

# getEntityByProperty:使用属性查询一条记录

# 【功能说明】

使用属性查询一条记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getEntityByProperty,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名
参数 propertyNameAndValues Object name1,value1;name2,value2;...
返回值 DataObject DataObject SDO实体
  1. 调用示例
Employee employee = Employee.FACTORY.create();
String entityName = "com.primeton.gocom.afcenter.model.org.Employee";

employee = DatabaseDao.getEntityByProperty(Employee.QNAME, "name","张三", "code","zs");

# getEntityByCriteriaBuilder:使用查询条件查询一条记录

# 【功能说明】

使用查询条件查询一条记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getEntityByCriteriaBuilder,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 CriteriaBuilder CriteriaBuilder CriteriaType构造器
返回值 DataObject DataObject SDO实体
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setName("张三");
employee.setCode("zs");

CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
Optional.ofNullable(employee.getName()).ifPresent((value) -> cb.and("name", value));
Optional.ofNullable(employee.getCode()).ifPresent((value) -> cb.and("code", value));
employee = DatabaseDao.getEntityByCriteriaBuilder(cb);

# getEntityByTemplate:使用模板查询的一条记录填充T,并返回满足模板条件的记录数

# 【功能说明】

使用模板查询的一条记录填充T,并返回满足模板条件的记录数。如果模板查询出多条记录,则用第一条记录填充T;

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.getEntityByTemplate,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 template DataObject 查询模板
返回值 DataObject DataObject SDO实体
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setName("张三");
employee.setCode("zs");

employee = DatabaseDao.getEntityByTemplate(employee);

# expandRelation:扩展一个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询

# 【功能说明】

扩展一个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询;

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.expandRelation,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entity DataObject 业务实体或者集合
参数 propertyNames String... 数据实体的关联实体的属性名称列表
  1. 调用示例

示例:由于实际业务中有可能根据性能要求,考虑把某个实体的复杂属性进行延时加载。此时就可以使用expandRelation进行二次扩展查询。数据实体之间是单向1:n关联关系。

DictType dictType = DictType.FACTORY.create();
dictType.setId("1");

DatabaseDao.expandRelation(dictType, "dictTypeId");

# expandRelations:扩展一个或多个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询

# 【功能说明】

扩展一个数据实体对象的一个关联属性(如对一个懒加载的属性),会进行数据库的查询;

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.expandRelations,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
参数 propertyNames String... 数据实体的关联实体的属性名称列表
  1. 调用示例

示例:由于实际业务中有可能根据性能要求,考虑把某个实体的复杂属性进行延时加载。此时就可以使用expandRelation进行二次扩展查询。数据实体之间是单向1:n关联关系。

List<DictType> dictTypeList = new ArrayList<>();
DictType dictType1 = DictType.FACTORY.create();
dictType1.setId("1");
DictType dictType2 = DictType.FACTORY.create();
dictType2.setId("2");
dictTypeList.add(dictType1);
dictTypeList.add(dictType2);

DatabaseDao.expandRelations(dictTypeList, "dictTypeId");

# expandAllRelations:扩展查询所有关联(1:N)

# 【功能说明】

扩展查询所有关联(1:N);

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.expandAllRelations,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
  1. 调用示例
List<DictType> dictTypeList = new ArrayList<>();
DictType dictType1 = DictType.FACTORY.create();
dictType1.setId("1");
DictType dictType2 = DictType.FACTORY.create();
dictType2.setId("2");
dictTypeList.add(dictType1);
dictTypeList.add(dictType2);

DatabaseDao.expandAllRelations(dictTypeList);

# expandAllRelations:查询所有关联(1:N)并指定关联深度

# 【功能说明】

查询所有关联(1:N)并指定关联深度;

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.expandAllRelations,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
参数 deep int 级联深度
  1. 调用示例
List<DictType> dictTypeList = new ArrayList<>();
DictType dictType1 = DictType.FACTORY.create();
dictType1.setId("1");
DictType dictType2 = DictType.FACTORY.create();
dictType2.setId("2");
dictTypeList.add(dictType1);
dictTypeList.add(dictType2);

DatabaseDao.expandAllRelations(dictTypeList, 1);

# queryEntitiesByKey:根据主键查询实体

# 【功能说明】

根据主键查询实体;

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByKey,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名,比如是单主键
参数 keyValues Object 主键值,数组,List皆可
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
List<String> keyValues = new ArrayList<>();
keyValues.add("1");
keyValues.add("2");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByKey(Employee.QNAME, keyValues);

# queryEntitiesByProperty:根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段

# 【功能说明】

根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByProperty,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名
参数 propertyNameAndValues Object... name1,value1;name2,value2;...
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByProperty(Employee.QNAME, "name","张三","status", "1");

# queryEntitiesByProperty:根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段

# 【功能说明】

根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByProperty,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 begin int 开始记录编号(从0开始)
参数 length int 查询记录数量
参数 entityName String 实体类型全名
参数 propertyNameAndValues Object... name1,value1;name2,value2;...
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByProperty(0, 10, Employee.QNAME, "name","张三","status", "1");

# queryEntitiesByPropertyWithPage:根据SDO数据模板查询条件分页查询所有记录,会查询Entity的所有字段

# 【功能说明】

根据SDO数据模板查询条件分页查询所有记录,会查询Entity的所有字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByPropertyWithPage,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 pageIndex int 起始页数(从0开始)
参数 pageSize int 每页记录数
参数 entityName String 实体类型全名
参数 propertyNameAndValues Object... name1,value1;name2,value2;...
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByProperty(0, 10, Employee.QNAME, "name","张三","status", "1");

# queryEntitiesByCriteriaBuilder:根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段

# 【功能说明】

根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByCriteriaBuilder,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cb CriteriaBuilder CriteriaType构造器
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
  private CriteriaBuilder toCriteriaBuilder(Employee employee) {
        CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
        Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
        Optional.ofNullable(employee.getPartyType()).ifPresent((value) -> cb.and("name", value));
        Optional.ofNullable(employee.getPartyId()).ifPresent((value) -> cb.and("code", value));
        Optional.ofNullable(employee.getRoleType()).ifPresent((value) -> cb.and("status", value));
        return cb;
    }
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByCriteriaBuilder(toCriteriaBuilder(employee));

# queryEntitiesByCriteriaBuilder:根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段

# 【功能说明】

根据查询条件查询所有记录,根据查询条件实体指定查询Entity的字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByCriteriaBuilder,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cb CriteriaBuilder CriteriaType构造器
参数 begin int 开始记录编号(从0开始)
参数 length int 查询记录数量
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
  private CriteriaBuilder toCriteriaBuilder(Employee employee) {
        CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
        Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
        Optional.ofNullable(employee.getPartyType()).ifPresent((value) -> cb.and("name", value));
        Optional.ofNullable(employee.getPartyId()).ifPresent((value) -> cb.and("code", value));
        Optional.ofNullable(employee.getRoleType()).ifPresent((value) -> cb.and("status", value));
        return cb;
    }
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByCriteriaBuilder(toCriteriaBuilder(employee), 0, 10);

# queryEntitiesByCriteriaBuilderWithPage:根据查询条件分页查询所有记录,根据查询条件实体指定查询Entity的字段

# 【功能说明】

根据查询条件分页查询所有记录,根据查询条件实体指定查询Entity的字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByCriteriaBuilderWithPage,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cb CriteriaBuilder CriteriaType构造器
参数 pageIndex int 起始页数(从0开始)
参数 pageSize int 每页记录数
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
  private CriteriaBuilder toCriteriaBuilder(Employee employee) {
        CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
        Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
        Optional.ofNullable(employee.getPartyType()).ifPresent((value) -> cb.and("name", value));
        Optional.ofNullable(employee.getPartyId()).ifPresent((value) -> cb.and("code", value));
        Optional.ofNullable(employee.getRoleType()).ifPresent((value) -> cb.and("status", value));
        return cb;
    }
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByCriteriaBuilder(toCriteriaBuilder(employee), 0, 10);

# queryEntitiesByTemplate:根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段

# 【功能说明】

根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByTemplate,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 template DataObject SDO数据模板查询条件
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByTemplate(employee);

# queryEntitiesByTemplate:根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段

# 【功能说明】

根据SDO数据模板查询条件查询部分记录,会查询Entity的所有字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByTemplate,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 template DataObject SDO数据模板查询条件
参数 begin int 开始记录编号(从0开始)
参数 length int 查询记录数量
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByTemplate(employee, 0, 10);

# queryEntitiesByTemplateWithPage:根据SDO数据模板查询条件分页查询部分记录,会查询Entity的所有字段

# 【功能说明】

根据SDO数据模板查询条件分页查询部分记录,会查询Entity的所有字段。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryEntitiesByTemplateWithPage,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 template DataObject SDO数据模板查询条件
参数 pageIndex int 起始页数(从0开始)
参数 pageSize int 每页记录数
返回值 dataObjects ResultList 符合查询模板的所有结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

ResultList<Employee> employeeList = DatabaseDao.queryEntitiesByTemplateWithPage(employee, 0, 10);

# countByEntity:根据实体统计记录数

# 【功能说明】

根据实体统计记录数。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.countByEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entity DataObject 业务实体(entity)保证主键赋值
返回值 count int 统计结果数量
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");

int count = DatabaseDao.countByEntity(employee);

# countByKey:根据实体统计记录数。(单主键)

# 【功能说明】

根据实体统计记录数。(单主键)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.countByKey,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名
参数 keyValues Object 主键值,数组,List皆可
返回值 count int 统计结果数量
  1. 调用示例

int count = DatabaseDao.countByKey(Employee.QNAME, ["1","2","3"]);

# countByProperty:根据属性统计记录数

# 【功能说明】

根据属性统计记录数。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.countByProperty,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名
参数 propertyNameAndValues Object... name1,value1;name2,value2;...
返回值 count int 统计结果数量
  1. 调用示例

int count = DatabaseDao.countByProperty(Employee.QNAME, "status", "1");

# countByCriteriaBuilder:根据查询条件条件统计记录数

# 【功能说明】

根据查询条件条件统计记录数。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.countByCriteriaBuilder,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cb CriteriaBuilder CriteriaType构造器
返回值 count int 统计结果数量
  1. 调用示例
  private CriteriaBuilder toCriteriaBuilder(Employee employee) {
        CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
        Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
        Optional.ofNullable(employee.getPartyType()).ifPresent((value) -> cb.and("name", value));
        Optional.ofNullable(employee.getPartyId()).ifPresent((value) -> cb.and("code", value));
        Optional.ofNullable(employee.getRoleType()).ifPresent((value) -> cb.and("status", value));
        return cb;
    }
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");
int count = DatabaseDao.countByCriteriaBuilder(toCriteriaBuilder(employee));

# countByTemplate:根据SDO数据模板查询条件统计记录数

# 【功能说明】

根据SDO数据模板查询条件统计记录数。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.countByTemplate,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 template DataObject SDO数据模板
返回值 count int 统计结果数量
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");
int count = DatabaseDao.countByTemplate(employee);

# insertEntity:插入一条或多条记录自动设置用户和时间,自动生成主键

# 【功能说明】

插入一条或多条记录自动设置用户和时间,自动生成主键。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.insertEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setName("张三");
employee.setCode("zs");
employee.setSex("男");
employee.setStatus("1");
int out = DatabaseDao.insertEntity(employee);

# insertEntityCascade:级联插入记录。(自动设置用户和时间,自动生成主键)

# 【功能说明】

级联插入记录。(自动设置用户和时间,自动生成主键)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.insertEntityCascade,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setName("性别");
dictType.setCode("gender");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setName("男");
dictEntry.setCode("man");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.insertEntityCascade(dictType);

# insertEntity:插入记录。(不自动生成主键,不级联)

# 【功能说明】

插入记录。(不自动生成主键,不级联)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.insertEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
参数 isSetUserAndTime boolean 是否自动设置用户和时间
参数 isAutoSetPrimary boolean 是否自动设置主键
参数 cascadeDeep int 级联深度,-1,无限级联;0,不做级联;1,只级联一级...
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setName("性别");
dictType.setCode("gender");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setName("男");
dictEntry.setCode("man");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.insertEntity(dictType, false, false, 1);

# updateEntity:更新记录。(自动设置用户和时间,不级联)

# 【功能说明】

更新记录。(自动设置用户和时间,不级联)

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.updateEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setName("张三");
employee.setCode("zs");
employee.setSex("男");
employee.setStatus("1");
employee.setId("1");

int out = DatabaseDao.updateEntity(employee);

# updateEntityCascade:级联更新记录。(自动设置用户和时间)

# 【功能说明】

级联更新记录。(自动设置用户和时间)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.updateEntityCascade,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setId("1");
dictType.setName("性别");
dictType.setCode("gender");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setId("1");
dictEntry.setName("男");
dictEntry.setCode("man");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.updateEntityCascade(dictType);

# updateEntity:更新记录

# 【功能说明】

更新记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.updateEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
参数 isSetUserAndTime boolean 是否自动设置用户和时间
参数 cascadeDeep int 级联深度,-1,无限级联;0,不做级联;1,只级联一级...
参数 isPartUpdate boolean 是否部分更新(属性不为null才更新)
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setName("性别");
dictType.setCode("gender");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setName("男");
dictEntry.setCode("man");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.updateEntity(dictType, false, 1, true);

# saveEntity:保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,自动生成主键,不级联)

# 【功能说明】

保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,自动生成主键,不级联)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.saveEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setName("张三");
employee.setCode("zs");
employee.setSex("男");
employee.setStatus("1");
employee.setId("1");

int out = DatabaseDao.saveEntity(employee);

# saveEntityCascade:级联保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键)

# 【功能说明】

级联保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键)

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.saveEntityCascade,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setName("性别");
dictType.setCode("gender");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setName("男");
dictEntry.setCode("man");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.saveEntityCascade(dictType);

# saveEntity:保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键,不级联)

# 【功能说明】

保存记录。如果没有,则会插入,否则就更新。(自动设置用户和时间,不自动生成主键,不级联)

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.saveEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
参数 isSetUserAndTime boolean 是否自动设置用户和时间
参数 isAutoSetPrimary boolean 是否自动设置主键
参数 cascadeDeep int 级联深度,-1,无限级联;0,不做级联;1,只级联一级...
参数 isPartUpdate boolean 是否部分更新(属性不为null才更新)
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setName("性别");
dictType.setCode("gender");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setName("男");
dictEntry.setCode("man");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.saveEntity(dictType, true, true, 1, true);

# deleteEntity:根据主键删除记录

# 【功能说明】

根据主键删除记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例
DictType dictType = DictType.FACTORY.create();
dictType.setId("1");

int out = DatabaseDao.deleteEntity(dictType);

# deleteEntityCascade:根据主键级联删除记录

# 【功能说明】

根据主键级联删除记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntityCascade,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
返回值 out int 返回结果
  1. 调用示例

DictType dictType = DictType.FACTORY.create();
dictType.setId("1");
List<DictEntry> dictEntryList = new ArrayList<>();

DictEntry dictEntry = DictEntry.FACTORY.create();
dictEntry.setId("1");
dictEntryList.add(dictEntry);

dictType.setDictEntrys(dictEntryList);

int out = DatabaseDao.deleteEntityCascade(dictType);

# deleteEntity:根据主键删除记录

# 【功能说明】

根据主键删除记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntity,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityOrCollectionOrArray Object 业务实体或者集合(DataObject)
参数 cascadeDeep int 级联深度,-1,无限级联;0,不做级联;1,只级联一级...
返回值 out int 返回结果
  1. 调用示例

DictType dictType = DictType.FACTORY.create();
dictType.setId("1");

int out = DatabaseDao.deleteEntity(dictType, 1);

# deleteEntityByKey:根据主键删除一条记录,如果T中有非主键的属性值,将根据主键查询出来覆盖原来的属性。(单主键)

# 【功能说明】

根据主键删除一条记录,如果T中有非主键的属性值,将根据主键查询出来覆盖原来的属性。(单主键)。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntityByKey,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名
参数 keyValues Object 主键值,数组,List皆可
返回值 out int 返回结果
  1. 调用示例

int out = DatabaseDao.deleteEntityByKey(DictType.QNAME, "1");

# deleteEntityByProperty:根据属性条件批量删除

# 【功能说明】

根据属性条件批量删除。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntityByProperty,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 entityName String 实体类型全名
参数 propertyNameAndValues Object... name1,value1;name2,value2;...
返回值 out int 返回结果
  1. 调用示例

int out = DatabaseDao.deleteEntityByProperty(DictType.QNAME, "name","性别","code","gender");

# deleteEntityByCriteriaBuilder:根据查询条件删除记录

# 【功能说明】

根据查询条件删除记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntityByCriteriaBuilder,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cb CriteriaBuilder CriteriaType构造器
返回值 out int 返回结果
  1. 调用示例
  private CriteriaBuilder toCriteriaBuilder(Employee employee) {
        CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
        Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
        Optional.ofNullable(employee.getPartyType()).ifPresent((value) -> cb.and("name", value));
        Optional.ofNullable(employee.getPartyId()).ifPresent((value) -> cb.and("code", value));
        Optional.ofNullable(employee.getRoleType()).ifPresent((value) -> cb.and("status", value));
        return cb;
    }
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");
int out = DatabaseDao.deleteEntityByCriteriaBuilder(toCriteriaBuilder(employee));

# deleteEntityByCriteriaBuilder:根据查询条件删除记录

# 【功能说明】

根据查询条件删除记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntityByCriteriaBuilder,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cb CriteriaBuilder CriteriaType构造器
参数 mustWhereCondition boolean 是否必须添加查询条件
返回值 out int 返回结果
  1. 调用示例
  private CriteriaBuilder toCriteriaBuilder(Employee employee) {
        CriteriaBuilder cb = new CriteriaBuilder(Employee.QNAME);
        Optional.ofNullable(employee.getId()).ifPresent((value) -> cb.and("id", value));
        Optional.ofNullable(employee.getPartyType()).ifPresent((value) -> cb.and("name", value));
        Optional.ofNullable(employee.getPartyId()).ifPresent((value) -> cb.and("code", value));
        Optional.ofNullable(employee.getRoleType()).ifPresent((value) -> cb.and("status", value));
        return cb;
    }
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");
int out = DatabaseDao.deleteEntityByCriteriaBuilder(toCriteriaBuilder(employee), true);

# deleteEntityByTemplate:根据SDO数据模板查询条件删除记录

# 【功能说明】

根据SDO数据模板查询条件删除记录。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.deleteEntityByTemplate,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 template DataObject SDO数据模板
返回值 out int 返回结果
  1. 调用示例
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");
int out = DatabaseDao.deleteEntityByTemplate(employee);

# queryByNamedSql:根据命名sql查询

# 【功能说明】

根据命名sql查询。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryByNamedSql,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 nameSqlId String 命名sql ID
参数 parameterObject Object 参数对象
返回值 out ResultList 返回结果
  1. 调用示例
Map<String, String> parameterObject = new HashMap<>();
parameterObject.put("code","zs");
String sqlId  = "com.primeton.eos.lowcode.nameSql.queryTest01";

ResultList<Employee> out = DatabaseDao.queryByNamedSql(sqlId, parameterObject);

# queryByNamedSql:根据命名sql查询

# 【功能说明】

根据命名sql查询。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryByNamedSql,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 nameSqlId String 命名sql ID
参数 parameterObject Object 参数对象
参数 begin int 开始记录编号(从0开始)
参数 length int 查询记录数量
返回值 out ResultList 返回结果
  1. 调用示例
Map<String, String> parameterObject = new HashMap<>();
parameterObject.put("code","zs");
String sqlId  = "com.primeton.eos.lowcode.nameSql.queryTest01";

ResultList<Employee> out = DatabaseDao.queryByNamedSql(sqlId, parameterObject, 0, 10);

# queryByNamedSqlWithPage:根据命名sql分页查询

# 【功能说明】

根据命名sql分页查询。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.queryByNamedSqlWithPage,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 nameSqlId String 命名sql ID
参数 parameterObject Object 参数对象
参数 pageIndex int 起始页数(从0开始)
参数 pageSize int 每页记录数
返回值 out ResultList 返回结果
  1. 调用示例
Map<String, String> parameterObject = new HashMap<>();
parameterObject.put("code","zs");
String sqlId  = "com.primeton.eos.lowcode.nameSql.queryTest01";

ResultList<Employee> out = DatabaseDao.queryByNamedSql(sqlId, parameterObject, 0, 10);

# executeByNamedSql:执行命名sql

# 【功能说明】

执行命名sql。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.executeByNamedSql,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 nameSqlId String 命名sql ID
参数 parameterObject Object 参数对象
返回值 out int 返回结果
  1. 调用示例
Map<String, String> parameterObject = new HashMap<>();
parameterObject.put("id","1");
String sqlId  = "com.primeton.eos.lowcode.nameSql.queryTest01";

int out = DatabaseDao.executeByNamedSql(sqlId, parameterObject);

# executeByNamedSqlBatch:批量执行命名sql

# 【功能说明】

批量执行命名sql,根据参数对象集合或者数组来循环执行命名sql。

# 【版本说明】

从EOS 8.2开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.primeton.gocom.afcenter.common.dao.DatabaseDao.executeByNamedSqlBatch,包含在com.primeton.gocom.afcenter.common.jar中。
  2. 运算逻辑定义在构件包com.primeton.gocom.afcenter.common中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 nameSqlId String 命名sql ID
参数 parameterObjectCollectionOrArray Object 参数对象
返回值 out int 返回结果
  1. 调用示例
List<Employee> employeeList  = new ArrayList<>();
Employee employee = Employee.FACTORY.create();
employee.setStatus("1");
employeeList.add(employee);
String sqlId  = "com.primeton.eos.lowcode.nameSql.queryTest01";

int out = DatabaseDao.executeByNamedSqlBatch(sqlId, employeeList);

← 查询条件操作类CriteriaUtil 数据上下文操作类DataContextUtil →