-
平台概念
-
HZERO简介
-
系统架构
-
开源组件
-
-
服务列表
-
注册中心
-
平台治理服务
-
网关服务
-
网关鉴权组件
-
-
认证服务
-
OAuth 授权介绍
-
OAuth Token API
-
多域名单点登录
-
三方登录组件
-
客制化开发
-
登录页面模板示例
-
-
IAM服务
-
用户相关API
-
-
Swagger测试服务
-
事务服务
-
平台基础服务
-
值集客户端
-
事件规则客户端
-
数据权限客户端
-
编码规则客户端
-
规则引擎客户端
-
配置维护客户端
-
数据源客户端
-
模板配置客户端
-
实体注册客户端
-
API 个性化组件
-
临时可访问租户
-
员工缓存客户端
-
平台多语言
-
高级检索
-
-
文件服务
-
开发指导
-
文件服务客户端
-
-
配置中心
-
消息服务
-
开发指导
-
消息服务客户端
-
-
调度服务
-
调度服务客户端
-
-
通用导入服务
-
通用导入客户端
-
-
接口服务
-
接口平台客户端
-
-
数据分发服务
-
数据分发客户端
-
-
新版工作流服务
-
工作流客户端
-
-
监控审计服务
-
数据变化拦截客户端
-
监控服务客户端
-
-
报表服务
-
开发指导
-
-
内容提取
-
开发指导
-
内容提取客户端
-
-
即时通讯
-
支付服务
-
开发指导
-
支付客户端
-
-
发票服务
-
开发指导
-
-
IOT服务
-
OCR服务
-
开发指导
-
-
WebExcel服务
-
数据模型服务
-
检索服务
-
开发指导
-
-
前端服务
-
银企直联服务
-
代理应用
-
新银行开发模式
-
接口清单
-
MQ跟业务的集成方式
-
并发请求用法方式
-
-
计费服务
-
计费服务客户端
-
-
规则引擎服务
-
规则引擎服务客户端
-
-
-
平台组件
-
辅助开发包
-
开发组件
-
Apollo客户端组件
-
Mybatis增强组件
-
数据导出组件
-
动态路由组件
-
分布式锁组件
-
长连接组件
-
redis开发帮助组件
-
对象存储支持组件
-
拓展对象存储
-
对象存储核心组件
-
阿里云对象存储
-
华为云对象存储
-
MinIO对象存储
-
腾讯云对象存储
-
京东云对象存储
-
AWS对象存储
-
百度云对象存储
-
微软对象存储
-
Ceph对象存储
-
-
短信服务支持组件
-
短信服务核心组件
-
阿里云短信
-
百度云短信
-
腾讯云短信
-
-
JDBC封装组件
-
SQL解析器组件
-
第三方集成组件
-
钉钉
-
企业微信
-
微信公众号
-
-
Excel操作组件
-
主键加密组件
-
文件分片组件
-
支付支持组件
-
拓展支付类型
-
支付核心组件
-
支付宝支持组件
-
微信支付支持组件
-
银联支付支持组件
-
-
语音服务支持组件
-
语音服务核心组件
-
京东语音服务
-
-
-
-
部署配置
-
服务创建
-
前端项目快速创建
-
服务选配功能快速创建项目
-
创建前端项目
-
架构介绍
-
webpack说明
-
lerna说明
-
hzero-front-runtime说明
-
-
后端项目快速创建
-
服务选配功能快速创建项目
-
命令行模式创建项目(已不再维护)
-
-
服务合并指南
-
-
服务部署
-
服务器本地安装
-
Choerodon安装
-
-
服务配置
-
服务通用配置
-
客户端依赖
-
服务切换web容器
-
基础服务调用链
-
-
升级指南
-
升级到1.3.0
-
从1.2.0升级到1.3.0
-
从1.1.0升级到1.3.0
-
从1.0.0升级到1.3.0
-
从0.11.0升级到1.3.0
-
-
升级到1.2.0
-
从1.1.0升级到1.2.0
-
从1.0.0升级到1.2.0
-
从0.11.0升级到1.2.0
-
从0.10.0升级到1.2.0
-
-
升级到1.1.0
-
从1.0.0升级到1.1.0
-
从0.11.0升级到1.1.0
-
从0.10.0升级到1.1.0
-
-
从0.11.0升级到1.0.0
-
从0.10.0升级到0.11.0
-
从0.9.0升级到0.10.0
-
从0.8.0升级到0.9.0
-
-
HAP升级HZERO
-
HAP3.X升级HZERO
-
HAP接口平台数据迁移
-
-
-
用户手册
-
登录
-
个人中心
-
工作台
-
站内消息
-
角色切换
-
系统管理
-
菜单管理
-
菜单配置
-
API管理
-
租户菜单管理
-
缺失权限管理
-
-
数据组管理
-
数据组管理
-
数据维度配置
-
-
租户管理
-
租户维护
-
租户初始化处理配置
-
租户初始化处理日志
-
-
登录管理
-
用户登录日志
-
在线用户
-
-
权限管理
-
单据维度
-
单据权限
-
-
服务器管理
-
服务器定义
-
服务器集群定义
-
-
模板管理
-
内容模板
-
-
SQL执行器
-
角色管理
-
角色管理
-
-
用户管理
-
子账户管理
-
用户组管理
-
-
配置管理
-
系统配置
-
LDAP
-
客户端
-
数据权限规则
-
配置维护
-
编码规则
-
域名配置
-
三方应用管理
-
卡片管理
-
条目配置
-
标签管理
-
数据层级配置
-
-
-
组织管理
-
组织信息
-
员工定义
-
组织架构
-
企业通讯录
-
通信录同步
-
-
基础数据管理
-
国家定义
-
国标品类定义
-
币种定义
-
日历定义
-
期间定义
-
汇率定义
-
汇率类型定义
-
税率定义
-
计量单位类型定义
-
财务代码设置
-
计量单位定义
-
银行定义
-
-
开发管理
-
CA证书管理
-
多语言管理
-
语言维护
-
返回消息管理
-
平台多语言
-
-
规则管理
-
事件规则
-
规则脚本
-
-
数据源管理
-
数据库设置
-
数据源设置
-
数据源驱动
-
-
个性化管理
-
API个性化
-
用户个性化
-
租户个性化
-
个性化单元
-
数据模型
-
接口字段维护
-
表单配置管理
-
客户化管理
-
-
值集管理
-
值集配置
-
值集视图配置
-
-
系统工具
-
静态文本管理
-
SQL执行器
-
-
事务管理
-
事务定义
-
事务实例
-
-
消息管理
-
公告管理
-
账户配置
-
邮箱账户
-
短信配置
-
微信公众号配置
-
微信企业号配置
-
钉钉配置
-
电话语音配置
-
-
消息模板
-
消息发送配置
-
消息接收配置
-
接收组维护
-
消息监控
-
-
文件管理
-
文件存储配置
-
服务器上传配置
-
文件上传配置
-
文件汇总查询
-
文件编辑日志
-
文件水印配置
-
-
调度平台
-
执行器管理
-
调度任务
-
可执行定义
-
请求定义
-
并发请求
-
调度日志
-
-
报表平台
-
数据集
-
报表模板管理
-
报表定义
-
报表请求
-
报表查询
-
标签模板管理
-
-
接口平台
-
接口配置
-
应用类型定义
-
服务注册
-
REST、SOAP协议互转
-
内部接口
-
组合接口
-
数据源接口
-
外部接口
-
-
接口能力汇总
-
-
接口授权
-
角色授权
-
客户端授权
-
接口平台鉴权体系
-
-
接口运维
-
接口监控
-
健康状况监控
-
-
接口计费
-
计费设置
-
接口服务计费设置
-
组合计费设置
-
-
购买
-
可购买列表
-
已购买列表
-
-
-
常见问题问答
-
-
通用导入
-
导入模板管理
-
导入历史
-
-
数据分发
-
数据核对
-
数据消息生产消费配置
-
生产消费异常监控
-
-
内容提取
-
NLP内容提取
-
基础数据
-
-
词语映射
-
模版词语映射
-
租户词语映射
-
-
模板管理
-
模版管理
-
模板配置
-
-
内容识别
-
识别测试
-
识别结果
-
-
-
支付管理
-
支付配置
-
支付订单
-
退款订单
-
-
新版工作流
-
快速入门
-
使用手册
-
接口定义
-
流程分类
-
流程单据
-
服务定义
-
流程定义
-
流程启动
-
流程监控
-
流程图编辑器
-
-
-
发票服务
-
手工发票查验
-
OCR发票查验
-
发票查验历史
-
发票接口配置
-
-
服务治理
-
API访问控制
-
服务管理
-
服务配置
-
服务监控控制台
-
限流规则
-
-
OCR识别
-
通用OCR
-
识别记录
-
-
WebExcel管理
-
WebExcel管理
-
WebExcel试算
-
-
审计监控管理
-
数据审计
-
审计配置
-
数据审计
-
-
操作审计
-
审计配置
-
审计查询
-
-
-
搜索中心
-
索引配置
-
查询配置
-
索引同步
-
同步日志
-
搜索数据
-
搜索组件客户端
-
-
数据模型管理
-
模型管理
-
数据目录
-
模型类型定义
-
数据分类定义
-
数据源维护
-
数据类型定义
-
-
属性管理
-
属性定义
-
主键定义
-
-
版本管理
-
数据类型版本
-
-
模型采集
-
数据模型采集
-
-
模型地图
-
数据模型可视化
-
-
-
IM管理
-
IM 基础配置
-
客服管理
-
客服消息中心
-
客服群组
-
-
知识管理
-
知识类别
-
知识维护
-
-
即时通讯
-
单聊
-
群聊
-
客服
-
-
-
银企直联服务
-
代理配置
-
银行账户
-
金融类交易记录
-
银行票据
-
票据交易记录
-
审计事件
-
-
计费服务
-
来源系统配置
-
计费规则
-
计费规则配置
-
计费引擎计算
-
-
计费账户
-
账户余额
-
充值记录
-
扣款记录
-
-
计费账单
-
账单
-
账单回调记录
-
-
-
IOT服务
-
项目管理
-
IOT服务
-
云账号配置
-
导览工作台
-
-
网关管理
-
网关模板
-
网关管理
-
OTA升级包
-
OTA升级任务
-
-
设备管理
-
数据点类型
-
数据点模板
-
数据点组模板
-
设备模板
-
设备管理
-
监测指标
-
-
告警管理
-
IoT告警模板
-
告警事件
-
-
-
-
开发规范
-
基础开发规范
-
分支管理
-
版本管理
-
命名规约
-
-
前端开发规约
-
目录结构
-
页面开发
-
查询表单
-
编辑表单
-
表格
-
开发流程
-
开发前准备
-
配置路由
-
编写service-数据接口
-
编写model-数据模型
-
编写ds-DataSet数据源
-
编写页面
-
维护菜单
-
启动服务
-
-
-
UED 规范
-
界面设计规约
-
界面布局规约
-
-
开发规约
-
国际化规范
-
日期时间规范
-
注释规范
-
表单规范
-
代码规范
-
-
-
后端开发规约
-
工程结构
-
项目规约
-
应用分层
-
-
Java基础规范
-
规范检查&工具设置
-
代码规约
-
注释规约
-
日志规范
-
异常规范
-
-
REST API规约
-
数据库规约
-
DB规范
-
SQL规范
-
表设计规约
-
表更新规范
-
-
Redis开发规范
-
Swagger描述规范
-
后端配置维护
-
单元测试
-
代码质量检查
-
人工代码检查
-
SonarQube代码检查
-
-
-
-
开发指引
-
前端开发指引
-
开发技术知识点
-
开发环境搭建
-
开发环境搭建(Windows)
-
开发环境搭建(Mac)
-
开发环境搭建(Linux)
-
-
开发流程
-
新服务开发流程
-
环境变量配置
-
公共路由
-
pub路由
-
private路由
-
public路由
-
-
开发示例
-
卡片开发
-
数据权限维度页面
-
二次开发
-
甘特图示例
-
-
通用Utils
-
render 方法
-
通用正则
-
通用常量使用
-
通用常量
-
项目配置
-
通用services
-
工具方法
-
menuTab 方法
-
通知提示
-
websocket方法
-
浏览器方法
-
异步请求方法
-
-
通用组件
-
多语言组件
-
LOV组件
-
导出组件
-
代码编辑组件
-
前端权限控制
-
图标组件
-
图标选择器组件
-
表格-行内编辑
-
表格-分页组件
-
上传组件
-
缓存组件
-
富文本编辑器组件
-
CheckBox组件
-
倒计时组件
-
Header组件
-
OnlyOfficeEditor组件
-
通用导入组件
-
分片文件上传
-
-
前端工具
-
代码扫描
-
-
customize 跨模块方式
-
customize 使用
-
customize 在工作台卡片上的使用
-
customize 在数据权限维度页面开发上的使用
-
customize 在工作流审批表单上的使用
-
customize 在菜单布局开发上的使用
-
-
hzero-front-cli
-
使用Cli创建前端项目
-
-
npm 私有源配置
-
-
阿里Sentinel整合
-
启用Sentinel监控功能
-
使用Sentinel熔断、降级、流控等功能
-
启用Sentinel控制台
-
-
后端开发指引
-
开发环境搭建
-
开发环境搭建(Windows)
-
-
应用开发流程
-
创建项目
-
初始化数据库
-
编写domain-领域模型层
-
编写infra-基础设施层
-
编写app-应用层
-
编写api-展现层
-
-
运行与测试
-
-
系统开发助手
-
后端代码工具
-
后端数据工具
-
前端扫描工具
-
-
开发示例
-
feign示例
-
asgard示例
-
扩展数据源功能示例
-
HZERO 门户模板示例
-
-
系统监控
-
ELK监控
-
ELK监控简介
-
ELK监控平台搭建
-
ELK监控平台对接
-
ELK监控示例
-
-
-
与炎黄AWS对接指引
-
部署集成炎黄AWS PAAS平台插件
-
本地开发集成炎黄AWS PAAS插件
-
-
个性化开发指引
-
个性化前端
-
个性化后端
-
用户个性化
-
-
-
UI
-
Choerodon UI
-
HZERO UI
-
Hippius UI
-
-
培训资料
-
Q & A
-
平台概念问题解答
-
Swagger常见问题
-
网关问题
-
API调用常见问题
-
权限常见问题解决
-
前端常见问题解答
-
接口平台常见问题解决
-
文件服务常见问题解决
-
调度服务常见问题解决
-
平台服务常见问题解决
-
-
版本更新
-
v1.3 版本更新
-
v1.3.6 版本更新
-
v1.3.5 版本更新
-
v1.3.2 版本更新
-
v1.3.1 版本更新
-
v1.3.0 版本更新
-
-
v1.2 版本更新
-
v1.2.3 版本更新
-
v1.2.2 版本更新
-
v1.2.1 版本更新
-
v1.2.0 版本更新
-
-
v1.1 版本更新
-
v1.1.5 版本更新
-
v1.1.4 版本更新
-
v1.1.3 版本更新
-
v1.1.2 版本更新
-
v1.1.1 版本更新
-
v1.1.0 版本更新
-
-
v1.0 版本更新
-
v1.0.12 版本更新
-
v1.0.11 版本更新
-
v1.0.10 版本更新
-
v1.0.8 版本更新
-
v1.0.8 版本更新
-
v1.0.7 版本更新
-
v1.0.6 版本更新
-
v1.0.5 版本更新
-
v1.0.4 版本更新
-
v1.0.3 版本更新
-
v1.0.2 版本更新
-
v1.0.1 版本更新
-
v1.0.0 版本更新
-
-
v0.11.0 版本更新
-
v0.10.0 版本更新
-
v0.9.0 版本更新
-
介绍
本文介绍HZERO 开放应用平台->服务选配功能,快速创建具有DDD模板代码 或者依赖 HZERO 服务的项目。 目前支持三种模式:
- 创建父项目:创建一个新的父项目
- 创建新服务:创建一个新的服务,可选择是否生成DDD模板代码,用于快速创建新项目
- 依赖服务创建:依赖某个服务创建,可选择是否生成DDD模板代码
- 批量创建HZERO服务:可快速批量创建HZERO服务
准备工作
- HZERO 微服务应用开发平台链接:http://hzero.saas.hand-china.com/
点击右上角服务选配按钮,进入服务选配页面
创建父项目
- 服务选配页面,选择"创建父项目"模式,可根据自己需要修改项目的各项配置;
- 点击"打开更多选项"按钮,可查看更多的配置属性;
- 修改完成后,点击导出文件按钮,即可导出zip包,解压后项目基本不需任何手动处理即可启动测试。
输入字段:
-
Group:项目GroupId;
-
Artifact:父项目ArtifactId;
-
版本号:父项目版本
-
Hzero服务版本:默认最新版本
- 生成的代码结构
创建新服务
- 服务选配页面,选择"新服务"模式,可根据自己需要修改项目的各项配置;
- 点击"打开更多选项"按钮,可查看更多的配置属性;
- 修改完成后,点击导出文件按钮,即可导出zip包,解压后项目基本不需任何手动处理即可启动测试。
输入字段:
-
parentType:父项目类型(使用自定义父项目|使用hzero-parent)
-
parentGroupId:父项目GroupId
-
parentArtifactId:父项目ArtifactId
-
parentVersion:父项目版本号
-
Hzero服务版本:Hzero版本号
-
配置中心:配置中心类型,可选:SpringCloud|Nacos|Formula|Apollo
-
注册中心:注册中心类型,可选:Eureka|Zookeeper|Nacos|Formula
-
Group:项目GroupId;
-
Artifact:项目ArtifactId;
-
组件:项目使用的hzero组件
-
Name:项目名称
-
Package Name:包名
-
Server Port:项目端口
-
projectCode:服务简码
-
projectRoute:服务路由
-
Description:项目描述
-
数据库类型:可选MySql|Oracle|SqlServer
-
数据库Schema:非必输
-
数据库用户名:非必输
-
数据库密码:非必输
-
生成的代码结构
依赖服务创建
- 服务选配页面,选择"依赖服务"模式,可根据自己需要选择对应的Hzero依赖服务;
- 点击"打开更多选项"按钮,可查看更多的配置属性;
- 修改完成后,点击导出文件按钮,即可导出zip包,解压后项目基本不需任何手动处理即可启动测试。
输入字段:
-
parentType:父项目类型(使用自定义父项目|使用hzero-parent)
-
parentGroupId:父项目GroupId
-
parentArtifactId:父项目ArtifactId
-
parentVersion:父项目版本号
-
Hzero服务版本:Hzero版本号
-
配置中心:配置中心类型,可选:SpringCloud|Nacos|Formula|Apollo
-
注册中心:注册中心类型,可选:Eureka|Zookeeper|Nacos|Formula
-
Group:项目GroupId;
-
Artifact:项目ArtifactId;
-
Hzero服务:可多选,选择需要依赖的Hzero服务
-
Name:项目名称
-
Package Name:包名
-
Server Port:项目端口
-
是否使用DDD:创建时是否生成DDD模版代码
-
Hzero服务版本:默认最新版本
-
projectCode:服务简码
-
projectRoute:服务路由
-
Description:项目描述
-
数据库类型:可选MySql|Oracle|SqlServer
-
数据库Schema:非必输
-
数据库用户名:非必输
-
数据库密码:非必输
-
生成的代码结构
批量创建HZERO服务
- 服务选配页面,选择"批量HZERO服务"模式,可根据自己需要批量选择对应的Hzero服务;
- 点击"打开更多选项"按钮,可查看更多的配置属性;
- 修改完成后,点击导出文件按钮,即可导出zip包,解压后项目基本不需任何手动处理即可启动测试;
- 当勾选的服务过多时,可能会花费较多时间,请耐心等待。
输入字段:
-
parentType:父项目类型(使用自定义父项目|使用hzero-parent)
-
parentGroupId:父项目GroupId
-
parentArtifactId:父项目ArtifactId
-
parentVersion:父项目版本号
-
配置中心:配置中心类型,可选:SpringCloud|Nacos|Formula|Apollo
-
注册中心:注册中心类型,可选:Eureka|Zookeeper|Nacos|Formula
-
项目类型:SAAS版本|OP版本
-
服务前缀:必输
-
Hzero服务:单选,选择需要依赖的Hzero服务
-
Hzero服务版本:默认最新版本
-
生成的代码结构
服务部署
- 服务部署及数据初始化请参考 服务器本地安装
服务快速启停
- 在基于服务器本地部署的情况下,如需快速启停服务,可参考以下脚本
#!/bin/bash
readonly PRODUCT="hzero"
# 服务列表
readonly SERVICE=(
$PRODUCT-register
$PRODUCT-config
$PRODUCT-gateway
$PRODUCT-gateway-helper
$PRODUCT-oauth
$PRODUCT-swagger
$PRODUCT-iam
$PRODUCT-platform
$PRODUCT-asgard
$PRODUCT-file
$PRODUCT-message
)
# 自定义参数
readonly IP="192.168.***.***"
readonly DATABASE_URL="jdbc:mysql://$IP:3306/{databaseName}?useSSL=false&useUnicode=true&characterEncoding=utf-8"
readonly DATABASE_USERNAME="hzero"
readonly DATABASE_PASSWORD="*****"
readonly REDIS_HOST="$IP"
readonly LOGGING_PATH="log"
readonly LOGGING_LEVEL="info"
readonly WAIT=30
readonly JAVA_OPTS="-Xms512m -Xmx1024m"
readonly API_PORT="8080"
# 环境参数
readonly E1="--EUREKA_DEFAULT_ZONE=http://$IP:8000/eureka"
readonly E2="--SPRING_CLOUD_CONFIG_URI=http://$IP:8010"
readonly E3="--CHOERODON_OAUTH_LOGIN_SUCCESS_URL=http://$IP/workplace"
readonly E4="--HZERO_OAUTH_URL=http://$IP:$API_PORT/oauth/oauth/authorize"
readonly E5="--HZERO_GATEWAY_DOMAIN=$IP:$API_PORT"
# 数据源参数
readonly D1="--SPRING_DATASOURCE_URL=$DATABASE_URL"
readonly D2="--SPRING_DATASOURCE_USERNAME=$DATABASE_USERNAME"
readonly D3="--SPRING_DATASOURCE_PASSWORD=$DATABASE_PASSWORD"
readonly D4="--SPRING_REDIS_HOST=$REDIS_HOST"
# 其他参数
readonly O1="--LOGGING_LEVEL=$LOGGING_LEVEL"
function stopService() {
echo "[$$]stop service : $1"
kill -9 $(jps -ml | grep $1 | awk '{print $1}') > /dev/null 2>&1
if [[ $? -eq 0 ]]; then
echo "[$$]stop success : $1"
else
echo "[$$]stop failed : $1"
fi
}
function startService() {
echo "[$$]start service : $1"
case $1 in
"$PRODUCT-config" | "$PRODUCT-governance" | "$PRODUCT-swagger")
databaseName="hzero_governance"
;;
# 需要启用更多的服务,将服务名称直接追加在后面
"$PRODUCT-asgard" | "$PRODUCT-file" | "$PRODUCT-message")
databaseName="hzero_$(echo $1 | cut -d - -f 2-)"
;;
*)
databaseName="hzero_platform"
;;
esac
startEnv="$E1 $E2 $E3 $E4 $E5 $D1 $D2 $D3 $D4 $O1"
loggingPath="$LOGGING_PATH/$1"
mkdir -p $loggingPath
nohup java $JAVA_OPTS -jar $1.jar ${startEnv//"{databaseName}"/$databaseName} > "$loggingPath/app.log" &
echo "[$$]start success : $1"
}
function restartService() {
stopService $1
startService $1
}
# -----------------------------------------------
# Process options with priority
# -----------------------------------------------
if [[ $1 == '--kill-em-all' ]]; then
jps -ml | grep $PRODUCT | awk '{print $1}' | xargs kill -9
exit $?
fi
if [[ "$#" -gt 0 ]]; then
echo "[$$]Restart : $*"
echo "[$$"
for service in $*
do
restartService $service
echo "[$$]wait $WAIT s to start : $service"
echo "[$$]"
sleep $WAIT
done
else
echo "[$$]Restart : ${SERVICE[*]}"
echo "[$$]"
for service in ${SERVICE[@]}
do
restartService $service
echo "[$$]wait $WAIT s to start : $service"
echo "[$$]"
sleep $WAIT
done
fi
echo "[$$]SUCCESS!"