检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
对象详解 BO Abstract BO Value Object 对象间关系 父主题: 后端应用管理
无法获取本地线程变量 问题描述 ClientControl的超时功能是搭配线程池使用的,所以当使用本地线程变量的时候会导致无法获取线程变量的问题。 解决方案 这种情况一般推荐使用远程调用自带的超时控制,将ClientControl的超时功能关闭。 提前获取需要的信息,传入加了@ClientControl注解的方法中。
Object是一个值对象,不能单独存在,需要和业务对象建立聚合的关系。 图1 和业务对象建立聚合关系 聚合后,Value Object中的主键和BO中的主键,共同构成了一个联合的主键。 图2 BO中的字段 图3 联合主键 属性说明 在业务设计页面,从“business”中,拖拽“Value
获取数据源远程字段 使用说明 您可以通过已有的远程Http接口,快速地生成数据源的字段。 操作步骤 参考登录AstroPro界面中操作,登录AstroPro界面。 在左侧导航栏中,选择“前端开发平台 > 前端应用”。 单击应用模块内的“开发应用”,进入设计器。 在左侧插件栏中,单击,展开数据源管理页面。
BO 功能介绍 BO(Business Object)是一个业务对象,业务对象映射到服务中的一个实体,对应数据库中的一张表。 属性说明 在业务设计页面,从“business”中,拖拽“BO”对象至画布空白区域。选中对象,在右侧页面设置对象属性,如图1所示。 图1 BO 对象名称:
每个Bo4关联最大Bo3数:一个次要方和首要方建立关联的数量上限。 每个Bo3关联最大Bo4维度上限预警值:首要方一条数据最多关联次要方多少条数据报出告警。 每个Bo4最大关联Bo3维度上限预警值:次要方一条数据最多关联首要方多少条数据报出告警 字段:多对多的关系是通过一个关系表来表示的。单击“字段”,可为关系表添加字段。
工程目录”设置为“DDD”时,和“单Module”一样,仅会生成“src”一个模块,如图1所示。 图1 DDD 代码结构说明 代码结构说明中的“{biz}”,为在AstroPro的业务设计中定义的对象,如BO、Abstract BO等。 com.astropro |-- api
、批量查询、批量删除和自定义查询。默认值为新增、更新、删除、查询和批量查询。 对象版本化:通过版本号的机制实现的乐观锁功能。开启此功能时,会在表中自动添加一个devspore_verion的字段来记录版本。在更新操作时会检查当前版本号和DB中的版本号是否一致,一致则更新数据并增加
多、多对多和聚合是两个不同的业务对象间产生关联,而树递归的双方为相同的对象类型,存储在同一张表中,递归关系的双方可以抽象成父子关系。树递归中,一个对象最多存在一个父对象,类似于数据结构中的树结构。创建树递归后,在数据库中会增加一个parentId字段,用来指向父节点。 图1 新增parentId字段
服务开发框架详解 整体结构介绍 单Module base/service DDD 父主题: AstroPro学堂
一对多 什么是一对多 一对多关系中,次要方可以不依赖于首要方,可以单独存在。删除一对多关系只代表两个对象之间的特定关系的结束,不会影响任何一个对象的生命周期。 图1 一对多和聚合的差异 创建一对多关系后,首要方不会做任何的改动,次要方的字段中会自动增加首要方的id,即primar
聚合关系本质上也是一种一对多关系,唯一不同的是聚合中次要方必须依赖首要方,任何对于次要方的操作首先要经过首要方才能继续往下操作。 图1 聚合和一对多的差异 关系属性设置 在业务设计页面,拖入两个BO业务对象(命名为Bo1、Bo2)单击“relations”中的“聚合”,为对象建立聚合关系。选中
对象间关系 一对多 多对多 聚合 树递归 继承 父主题: 对象详解
工程目录”设置为“单Module”,仅会生成“src”一个模块,如图1所示。 图1 单Module 代码结构说明 代码结构说明中的“{biz}”,为在AstroPro的业务设计中定义的对象,如BO、Abstract BO等。 com.astropro |-- api
在AstroPro中完成服务的开发后,会生成一个服务代码压缩包,命名为“服务名称+唯一ID”。假设服务名称为Servicedemo,则生成的代码压缩包名称,如图1所示。 图1 代码压缩包名称 了解代码结构 在AstroPro中编辑服务时,可在“生成策略 > 代码风格”中定义生成代码的工程目录结构,如图2、图3。
继承 什么是继承 在继承关系中,业务对象可以继承抽象对象中的所有字段。例如,业务对象Role和抽象对象Abstract,抽象对象中存在name和value两个字段。建立继承关系后,抽象对象Abstract中的字段会被业务对象Role完全继承,如图2。 图1 抽象对象Abstract
client:客户端模块,在AstroPro中添加服务时,开启“是否生成客户端”配置后(如图2),才会生成该模块。 图2 开启“是否生成客户端” base代码目录结构 代码结构说明中的“{biz}”,为在AstroPro的业务设计中定义的对象,如BO、Abstract BO等。
根据配置的业务模型,生成服务的基本代码。代码生成后,会提供一个压缩包,供您使用。关于代码结构的详细介绍,请参见服务开发框架详解。 操作步骤 参考编辑服务中操作,完成业务模型的配置。 在服务依赖中,单击“创建”。 输入变更日志描述信息,单击“创建”。 系统开始创建服务,并生成该服务的代码。 图1 创建服务并生成代码包
费用账单 您可以在“费用中心 > 账单管理”中,查看与AstroPro相关的流水和明细账单,以便了解您的消费情况。 账单上报周期 包年/包月计费模式的套餐完成支付后,会实时上报一条账单到计费系统进行结算。 查看指定资源的账单 进入“费用中心 > 我的订单”页面。 在下图所示位置,单击,复制订单号。
打开生成的服务代码包,在“README.md”文件中可查看代码目录结构的说明,如图3所示。 图3 代码目录结构说明 代码目录结构分为“base/service”、“单Module”和“DDD”三种,在编辑元数据的“生成策略 > 代码风格 > 工程目录”中可进行定义,生成效果差异如图5所示。本