# ams_1 **Repository Path**: cpanmac/ams_1 ## Basic Information - **Project Name**: ams_1 - **Description**: 构建以交易驱动的、组件化的可控可治理业务基础开发平台。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: dev - **Homepage**: http://www.trythis.cn/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 6 - **Created**: 2022-04-09 - **Last Updated**: 2022-04-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
-------------------------------------------------------------------------------《AMS平台程序员开发手册》
## 1、修订记录 | 日期 | 版本 | 修订目的描述 | 修订章节 | 作者 | 审核 | | ---------- | ---- | ------------ | -------- | ------ | ---- | | 2018/02/05 | 1.0 | 文档初建 | 修订章节 | 刘彦龙 | | | 2019/01/05 | 1.1 | 文档修订 | 修订章节 | 刘彦龙 | | ### 宣言 为业务立心,为科技立命,为发展继绝学,为创新开太平。 AMS(纪念第一个项目)是领域模式下的金融演进式开发框架、是根据金融领域业务处理模式不断演化出的可扩展的轻量级应用开发架构。 ##### 原则 ###### 1、框架必须是可持续继承和可扩展的,--支持灵活的构建和灵活的扩展 ###### 2、框架必须有适应组织架构开发模式,--适应人员组织架构的开发模式 ###### 3、框架必须是低浸入的与业务隔离的,--业务代码与技术代码分离 ### 项目介绍 构建以交易驱动的、组件化的可控可治理业务基础开发平台,能有效的落地行内架构、规范行内标准、提升业务支持能力,加快开发效率。建立一套适用的开发模型,提高软件复用性和可控性,做到系统级的架构和标准,提升业务支撑能力降低开发成本。 ## 2、前言 《开发手册》是平台技术团队根据‘业务基础平台’平台在经历了不断实践及不断完善的经验总结。 本业务基础平台旨在基于服务化组件化概念下搭建一个在软件基础架构平台之上、解决应用软件的业务描述与管理,为基于事物脚本及领域模型下的业务需求提供 标准、稳定、便捷高效的基础开发平台。 ## 3、概述及定位 业务基础平台概念:业务基础平台是业务逻辑应用和基础架构平台之间的一个中间层,解决 “应用软件的业务描述和操作系统平台、软件基础架构平台之间的交互与管理问题”。操作系统平台解决了“应用软件系统与硬件之间的交互与管理问题”,软件基础架构平台解决了“应用软件系统与操作系统平台之间的交互与管理问题”,而业务基础平台则是解决了“应用软件的业务描述与操作系统平台、软件基础架构平台之间的交互与管理问题”。如下图所示:  业务基础平台目标是:构建以交易驱动的、组件化的可控可治理业务基础开发平台,能有效的落地行内架构、规范行内标准、提升业务支持能力,加快开发效率。建立一套适用的开发模型,提高软件复用性和可控性,做到系统级的架构和标准,提升业务支撑能力降低开发成本。 业务基础平台系统架构图:  ## 4、项目子系统 我们需要各子系统确定英文简称,因为项目开发中的权限控制注解、菜单id、数据库名、项目发布名都要用到子系统简称。参见下表: | 子系统名称 | 子系统简称 | | -- | -- | | 注解处理系统 | ams-apt | | 核心子系统 | ams-core | | 安全子系统 | ams-security | | 工作流系统 | ams-workflow | | 调度子系统 | ams-scheduler | | 基础web子系统 | ams-web | ## 5、业务组件 | 模块名称 | 描述 | | ----------------- | ---- | | 交易服务模块 | 以面向交易的方式约束功能开发 | | 数据访问模块(ORM) | 基于mybatis的定制化ORM | | 日志管理模块 | 日志系统 | | 用户认证模块 | 安全组件 | | 功能权限模块 | 内置权限管理功能 | | 系统管理模块 | 内置系统基础管理 | | 服务契约管理模块 | 服务契约 | | 系统监控模块 | 系统监控 | | 服务挡板组件 | 可配置服务挡板处理 | | 元数据管理组件 | 系统元数据字典管理 | | 缓存组件 | 支持集群同步的缓存组建 | | 事务组件 | 支持配置式注解式编码式事务组件 | | 分页组件 | 无侵入的分页组件支持 | | ESB组件 | 实现自动组装的规范的ESB组件支持 | | 异常工具 | | | 代码生成工具 | | | 序列生成工具 | | | 数据总线工具 | | | excel导出工具 | | ## 6、工程目录规范 ``` lua ├── pom.xml maven项目对象模型文件 └── src/main/java 源码 ├── com.njcb.ams │ ├── bootconfig 初始化引导配置 │ ├── assembler 提供数据对象转换 │ ├── dto 数据传输对象 │ | └── standard 提供数据传输对象标准 │ ├── event 提供事件处理标准 │ ├── application 交易服务层 │ ├── repository │ │ ├── dao 数据访问对象 │ │ ├── entity 数据实体 │ ├── portal 工程入口配置 │ ├── service 业务服务层 │ ├── store 业务组件模块 │ │ ├── authcode 验证码实现 │ │ ├── esbmodule ESB组件 │ | └── stable 交易控制组件 │ ├── support 基础支撑功能 │ │ ├── annotation 注解对象 │ │ ├── beanprocessor 对象解析 │ | └── exception 异常工具包 │ └── util 工具包 src/main/resource │ ├── resources │ │ ├── applicationContext.xml │ │ ├── ehcache.xml 缓存配置 │ │ └── ams.properties │ └── log4j.xml 日志配置 src/test/java ├── com.njcb.ams │ ├── junit │ ├── orm.dao │ ├── 其他 src/main/webapp ├── css ├── html ├── images ├── js ├── jsp ├── WEB-INF └── 其他 ``` ## 7、平台开发模式 项目以面向服务体系架构(SOA)和业务组件(BC)发方式构建,开发平台的宗旨是 一、为分层模式下的事物脚本开发模式提供支撑保障。 二、为领域驱动复杂业务逻辑开发提供标准模式组件 ### 7.1、 构建基于 MVC 的 J2EE 多层模型  ### 7.2、 构建基于 领域驱动 设计的开发模型  ## 8、资源列表 项目开发在Windows7 64位系统上,部署在Linux系统上。为了避免一些兼容性问题,请使用我们的提供的软件包进行开发 ### 8.1、 开发环境: - Jdk8+ - Oracle11G+ ### 8.2、 技术选型 | 技术 | 版本 | 名称 | 说明 | | -- | -- | -- | -- | | Spring Boot | 2.1.1.RELEASE | 容器 | | | Spring Framework | 5.1.3 | 容器 | | | SpringMVC | 5.1.3 | MVC框架 | | | spring security | | 安全框架 | | | Mybatis | 3.4.6 | ORM框架 | | | CXF | 3.1.8 | webservices框架 | | | swagger | 2.9.2 | 服务契约框架 | | | quartz | 2.2.3 | 调度框架 | | | ehcache | 2.10.0 | 缓存框架 | | | jackson | 2.9.7 | json框架 | | | poi | 3.16 | excel处理框架 | | ### 8.3、 开放环境 | 版本 | 名称 | 地址 | 说明 | | -- | -- | -- | -- | | 1 | 门户 | http://www.trythis.cn | 门户网站 | | 1 | 演示 | http://www.trythis.cn:3400/ams-demo | 演示系统 | | 1 | 演示 | http://www.trythis.cn:8080 | VUE版演示系统 | | 2.150.3 | jenkins | http://www.trythis.cn:3401 | jenkins | | 2.11.4 | Nexus | http://www.trythis.cn:3402/nexus | maven私服 | | 7.7.1 | solr | http://www.trythis.cn:3403/solr/#/ | solr服务 | | 1 | | | | | 1 | | | | ### 8.4、 特性提案 | 编号 | 预计版本 | 名称 | 说明 | | -- | -- | -- | -- | | 1 | 2.1 | WebUI | 完善UI功能,或基于vue重构 | | 2 | 2.1 | 流程引擎 | 基于activiti引入流程引擎,并集成流程设计器 | | 3 | 2.1 | 组件开发 | 利用starter构建常用组件 | | 4 | 2.1 | WTCC完善 | 加入TCC分布式事务组件,简化版分布式事务处理 | | 5 | 2.1 | 批量程序 | 批量程序分离 | | 6 | 2.1 | 服务监控 | 完善监控端点 | | 7 | 2.1 | | |