logo资料库

iUAP开发手册.pdf

第1页 / 共447页
第2页 / 共447页
第3页 / 共447页
第4页 / 共447页
第5页 / 共447页
第6页 / 共447页
第7页 / 共447页
第8页 / 共447页
资料共447页,剩余部分请下载后查看
版权
目录
一 业务场景
1 iUAP平台介绍
1.1 开发平台
1.1.1 开发工具
1.1.2 测试工具
1.2 前端技术架构
1.2.1 IWEB框架定位
1.2.2 IWEB框架优势
1.3 应用支撑平台
1.4 基础技术平台
1.5 运维平台
1.5.1 持续迭代开发
1.5.2 实时运行监控
1.5.3 高效自动运维
2 场景描述
二 开发环境搭建
1 后端工程搭建
1.1 开发工具Devtool安装
1.2 新建项目
1.3 Maven配置
1.3.1 Pom.xml配置
1.3.2 Settings.xml
1.3.3 maven构建
1.4 服务器启动调试
2 前端工程搭建
2.1 NodeJS安装
2.2 npm安装
2.3 项目启动
2.4 项目目录
3 数据库准备
4 基础资料获取
三 基础开发
1 档案类型-用户节点开发
1.1 服务器端开发
1.1.1 数据模型创建
1.1.1.1 创建pdm,建表
1.1.1.2 生成实体Entity
1.1.2 持久层DAO编写
1.1.2.1 iuap-jdbc配置
1.1.2.2 主键生成策略UUID
1.1.2.3 DAO编写
1.1.3 Service编写
1.1.4 Controller编写
1.2 前端页面开发
1.2.1 模块化管理工具
1.2.2 Director前端路由
1.2.3 AMD模块的写法
1.2.4 控件
1.2.5 datatable数据模型
1.2.6 初始化
1.2.7 与后台服务器交互
2 业务流程单据
2.1 前端页面开发
2.1.1 单据模板开发
2.1.1.1 配置单据模板开发环境
2.1.1.2 开发元数据
2.1.1.3 单据模板的开发态
2.1.2 单据模板的完善
2.1.2.1 MD实现
2.1.2.2 启用单据模板
2.1.2.3 单据模板字段翻译
2.1.2.4 增加
2.1.2.5 修改
2.1.2.6 删除
2.1.2.7 保存
2.1.2.8 返回
2.2 服务器端开发
2.2.1 数据模型创建
2.2.2 创建pdm,建表
2.2.3 生成实体Entity
2.2.4 DAO编写
2.2.5 Service编写
2.2.6 Controller编写
2.2.7 BPM流程开发
3 单元测试
3.1 Junit配置运行
3.2 服务器端代码测试
3.2.1 DAO测试
3.2.2 Service测试
3.2.3 Controler测试
4 生产环境搭建部署
4.1 iUAP运维平台安装准备
4.2 安装环境需求
4.3 iUAP运维平台安装
4.4 Docker镜像仓库简介
4.5 Docker镜像仓库安装
四 前端工程开发
1 界面开发
1.1 栅格布局
1.2 UI框架
1.2.1 UI框架定位
1.2.2 UUI的使用
1.2.3 UUI的扩展
1.2.4 UUI包内容介绍
1.3 控件模型
1.3.1 控件模型的绑定
2 模型层开发
2.1 模型定义
2.2 数据载入到模型中
2.3 数据的新增与修改
2.3.1 新增数据行并赋值
2.3.2 修改已存在的行中数据
2.4 数据的删除
2.4.1 删除某一行数据
2.4.2 删除所有行数据
2.5 获取模型中的数据
2.5.1 获取所有数据
2.5.2 获取某一行的数据
2.5.3 获取某一行中某个字段的值
3 页面管理控制器
3.1 创建app
3.2 初始化界面及数据模型
4 与服务器端交互
五 后端工程开发
1 持久层
1.1 持久化方案
1.1.1 JPA
1.1.1.1 基础配置
1.1.1.2 用方式
1.1.2 mybatis
1.1.2.1 基础配置
1.1.2.2 使用方式
1.1.3 iuap-jdbc
1.1.3.1 基础配置
1.1.3.2 使用方式
1.2 数据库连接池的使用规范
1.2.1 数据库连接池简介
1.2.2 数据库连接池配置
1.2.3 数据库连接池使用
1.3 多种数据源的适配
1.3.1 JPA的适配
1.3.2 MyBatis的适配
1.3.3 UAP JDBC的适配
1.4 阿里云适配规范
1.4.1 阿里云数据库服务简介
1.4.2 接口适配原则
1.4.3 相关配置
1.5 对象标识(OID)组件
1.5.1 对象标识简介
1.5.2 对象标识生成配置
1.5.2.1 UUID生成
1.5.2.2 UUID配置
1.5.2.3 UUID使用
1.5.3 Redis自增ID方案
1.5.3.1 Redis自增ID配置
1.5.3.2 Redis自增ID使用
1.5.4 snowflake生成方案
1.5.4.1 snowflake方案配置
1.5.4.2 snowflake方案使用
1.5.5 自定义ID生成方案
1.5.5.1 自定义方案配置与使用
2 服务层
2.1 业务服务Service
2.2 事务框架
2.2.1 什么是事务
2.2.2 事务基本配置
2.2.3 事务的使用
3 业务层
3.1 Spring MVC
3.1.1 3.1.1、Spring MVC架构
3.1.1.1 Spring MVC架构图
3.1.1.2 Spring MVC核心组件及调用过程
3.1.2 Spring MVC配置
3.1.3 Spring MVC使用
3.2 Controller
3.2.1 常用注解
3.2.2 Controller解析
3.2.2.1 Controll类注解以及Service引入
3.2.2.2 查询方法
3.2.2.3 保存、删除方法
六 典型业务场景
1 登陆与认证
1.1 功能简介
1.2 工作流程
1.2.1 几个概念
1.2.2 具体流程
1.3 与Spring整合认证配置
1.3.1 引入组件
1.3.2 web.xml配置
1.3.3 spring-mvc.xml配置
1.3.4 applicationContext-shiro.xml配置
1.3.5 配置token的生成处理类
1.4 无状态会话开发规范
1.4.1 无状态会话简介
1.4.2 无状态会话配置
1.4.3 无状态会话使用
1.5 验证策略AuthenticationStrategy
1.5.1 更改认证策略
1.6 认证使用
1.7 登陆过程分析
2 权限模型
2.1 功能简介
2.2 工作流程
2.2.1 几个概念
2.2.2 主要流程
2.3 关键功能
2.3.1 授权
2.3.2 授权认证
2.3.3 拦截器
2.3.4 缓存机制
2.4 API接口
2.4.1 基础服务接口
2.4.2 用户服务接口
2.4.3 角色服务接口
2.4.4 角色分配接口
2.4.5 功能服务接口
2.5 开发步骤
2.5.1 与Spring集成
2.5.2 读取功能权限
2.5.3 读取按钮权限
2.5.4 资源角色授权
2.5.5 权限拦截控制
2.5.6 权限配置
2.6 扩展机制
2.6.1 配置用户对应服务
2.6.2 权限策略扩展
3 多语
3.1 国际化和本地化规范
3.2 国际化和本地化需求场景
3.3 多语实现的技术方案
3.3.1 前端开发
3.3.2 后端开发
3.4 时间和时区
4 参照
4.1 相关配置
4.2 参照前端配置
4.3 树表型参照
4.4 树形参照
4.5 表格参照
5 流程平台
3.
4.
5.
5.1 流程平台简介
5.2 流程部署
1.
2.
3.
4.
5.
5.1.
5.2.
5.2.1 流程服务部署
5.3 流程功能开发
5.3.
5.3.1 流程开发环境的搭建
5.3.1.1 新项目搭建开发环境
5.3.1.1.1 引入BPMSDK
5.3.1.1.2 填写SDK配置
5.3.1.1.3 读取SDK配置,生成服务
5.3.1.1.4 设计流程定义
5.3.1.2 使用demo工程搭建项目
5.3.2 开发功能
5.3.2.1 启动流程
5.3.2.1.1 API接口
5.3.2.1.1.1 根据Key启动流程实例(startProcessInstanceByKey)
5.3.2.1.1.2 根据流程ID启动流程实例(startProcessInstanceById)
5.3.2.1.2 开发示例
5.3.2.1.3 扩展
5.3.2.2 待【已】办列表
5.3.2.2.1 API接口
5.3.2.2.1.1 查询待办任务(queryTasksToDo)
5.3.2.2.1.2 查询历史任务实例(getHistoricTaskInstances)
5.3.2.2.2 开发示例
5.3.2.2.3 扩展
5.3.2.3 历史流程图
5.3.2.3.1 API接口
5.3.2.3.1.1 流程实例运行时信息(getHighlightsProcessInstance)
5.3.2.3.1.2 获取流程定义对应的流程图json信息,以及流程实例对应的运行时json信息(getProcessInstanceDiagramJson)
5.3.2.3.2 开发过程
5.3.2.3.3 扩展
5.3.2.4 审批
5.3.2.4.1 API接口
5.3.2.4.1.1 完成任务(complete)
5.3.2.4.2 开发示例
5.3.2.4.3 扩展
5.3.2.5 驳回
5.3.2.5.1 API接口
5.3.2.5.1.1 返回驳回的所有活动 (rejectcheck)
5.3.2.5.1.2 驳回到流程的某个活动(rejectToActivity)
5.3.2.5.2 开发示例
5.3.2.5.3 扩展
5.3.2.6 加签
5.3.2.6.1 API接口
5.3.2.6.1.1 任务加签(counterSignAdd)
5.3.2.6.2 开发示例
5.3.2.6.3 扩展
5.3.2.7 弃审
5.3.2.7.1 API接口
5.3.2.7.1.1 任务撤回(withdrawTask)
5.3.2.7.2 开发示例
5.3.2.7.3 扩展
5.3.2.8 指派
5.3.2.8.1 API接口
5.3.2.8.1.1 检查指派(assignCheck)
5.3.2.8.1.2 流程内调整(jumpToActivity)
5.3.2.8.2 开发示例
5.3.2.8.3 扩展
5.3.2.9 改派
5.3.2.9.1 API接口
5.3.2.9.1.1 代办(delegateTaskCompletely)
5.3.2.9.2 开发示例
5.3.2.10 多表单审批
5.3.2.10.1 API接口
5.3.2.10.1.1 查询历史变量实例(getHistoricVariableInstances)
5.3.2.10.2 开发示例
5.4 流程图的设计
5.4.
5.4.1 基本操作
5.4.1.1 流程图设计界面简介
5.4.1.2 流程图基本操作
5.4.1.2.1 绘制流程图
5.4.2 常用功能设计
5.4.2.1 参与人
5.4.2.2 网关
5.4.2.3 会签【抢占】
5.4.2.4 指派
5.4.2.5 脚本任务
5.4.2.6 子流程
5.4.2.7 事件
5.4.2.8 业务规则任务
5.4.3 流程图的部署
5.4.3.1 单流程文件的部署
5.4.3.2 多流程文件的部署
6 缓存
6.1 分布式缓存
6.1.1 分布式缓存配置
6.1.2 分布式缓存使用
6.1.3 应用案例
6.2 阿里云适配规范
6.2.1 阿里云缓存服务简介
6.2.2 接口适配原则
6.2.3 相关配置
7 业务锁
7.1 分布式锁组件配置
7.2 分布式锁组件使用
8 调度任务
8.1 调度任务简介
8.2 调度任务设计原则
8.3 调度任务配置
8.4 调度任务使用
8.5 调度任务管理平台
8.5.1 新建任务
8.5.2 运行任务
8.5.3 任务日志
9 分布式服务框架
9.1 Restful服务开发规范
9.1.1 Restful简介
9.1.2 Restful配置
9.1.3 Restful使用
9.2 WebService服务开发规范
9.2.1 WebService简介
9.2.2 WebService配置
9.2.3 WebService使用
9.3 Dubbo微服务开发规范
9.3.1 Dubbo微服务简介
9.3.2 Dubbo微服务配置
9.3.3 Dubbo微服务使用
10 安全框架
10.1 iUAP安全架构
10.2 安全设计原则
10.3 安全编码原则
10.3.1 输入验证
10.3.2 输出编码
10.3.3 身份验证和密码管理
10.3.4 会话管理
10.3.5 访问控制
10.3.6 加密规范
10.3.7 错误处理和日志
10.3.8 数据保护
10.3.9 通讯安全
10.3.10 数据库安全
10.3.11 文件管理
10.3.12 通用编码规范
10.4 安全编码规范
10.4.1 跨站脚本(XSS)
10.4.1.1 定义
10.4.1.2 危害
10.4.1.3 种类
10.4.1.4 解决方法
10.4.1.4.1 验证输入
10.4.2 SQL注入
10.4.2.1 定义
10.4.2.2 危害
10.4.2.3 种类
10.4.2.4 解决方法
10.4.3 恶意文件执行
10.4.3.1 定义
10.4.3.2 危害
10.4.3.3 解决方法
10.4.4 不安全的直接对象引用
10.4.4.1 定义
10.4.4.2 解决方法
10.4.4.3 危害
10.4.4.3.1 案例1
10.4.4.3.2 案例2
10.4.5 跨站请求伪造
10.4.5.1 定义
10.4.5.2 危害
10.4.5.3 解决方法
10.4.6 信息泄露和错处理不当
10.4.6.1 定义
10.4.6.2 危害
10.4.6.3 解决方法
10.4.6.3.1 案例1
10.4.6.3.2 案例2
10.4.7 认证和会话管理缺陷
10.4.7.1 定义
10.4.7.2 危害
10.4.7.3 解决方法
10.4.8 不安全的加密存储
10.4.8.1 定义
10.4.8.2 危害
10.4.8.3 解决方法
10.4.9 不安全的通信
10.4.9.1 定义
10.4.9.2 危害
10.4.9.3 解决方法
10.4.10 URL访问控制失效
10.4.10.1 定义
10.4.10.2 解决方法
七 开发规范
1 开发规范
1.1 组件与包名命名规范
1.2 JAVA编程规范
1.3 前端编程规范
2 异常处理
2.1 异常的定义
2.2 异常的抛出
2.3 异常的捕获
3 日志
3.1 日志配置
3.2 日志使用
八 iUAP-STUDIO工具集
1 iUAP项目创建
2 iUAP页面生成工具
iUAP 开发手册 用友 iUAP 技术学习系列教材 2016 年 6 月 用友技术学院
版权 © 2016用友技术学院版权所有。 未经用友技术学院的书面许可,本文档任何整体或部分的内容不得被复制、复 印、翻译或缩减以用于任何目的。本文档的内容在未经通知的情形下可能会发生改 变,敬请留意。请注意:本文档的内容并不代表用友技术学院所做的承诺。 1 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
目录 版权 .....................................................................................................................1 目录 .....................................................................................................................2 一 1 1.1 1.2 1.3 1.4 1.5 2 二 1 1.1 1.2 1.3 1.4 业务场景 ............................................................................................9 iUAP 平台介绍 ............................................................................................................. 9 开发平台 ...................................................................................................................... 10 前端技术架构 .............................................................................................................. 18 应用支撑平台 .............................................................................................................. 21 基础技术平台 .............................................................................................................. 24 运维平台 ...................................................................................................................... 29 场景描述 ...................................................................................................................... 35 开发环境搭建 .................................................................................. 36 后端工程搭建 .............................................................................................................. 37 开发工具 Devtool 安装 ............................................................................................ 38 新建项目 ...................................................................................................................... 42 Maven 配置 ................................................................................................................ 47 服务器启动调试 ......................................................................................................... 58 2 前端工程搭建 .............................................................................................................. 68 2.1 2.2 NodeJS 安装 .............................................................................................................. 68 npm 安装 .................................................................................................................... 69 2 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
2.3 2.4 3 4 三 1 1.1 1.2 项目启动 ...................................................................................................................... 70 项目目录 ...................................................................................................................... 71 数据库准备 .................................................................................................................. 73 基础资料获取 .............................................................................................................. 74 基础开发 ......................................................................................... 75 档案类型-用户节点开发 ........................................................................................... 76 服务器端开发 .............................................................................................................. 78 前端页面开发 .............................................................................................................. 90 2 业务流程单据 .............................................................................................................. 97 2.1 2.2 前端页面开发 .............................................................................................................. 98 服务器端开发 ............................................................................................................ 110 3 单元测试 .................................................................................................................... 133 3.1 3.2 Junit 配置运行 ......................................................................................................... 133 服务器端代码测试 ................................................................................................... 135 4 生产环境搭建部署 ................................................................................................... 138 4.1 4.2 4.3 4.4 4.5 iUAP 运维平台安装准备 ......................................................................................... 139 安装环境需求 ............................................................................................................ 139 iUAP 运维平台安装 ................................................................................................. 140 Docker 镜像仓库简介 ............................................................................................ 146 Docker 镜像仓库安装 ............................................................................................ 146 四 前端工程开发 ................................................................................ 152 3 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
1 界面开发 .................................................................................................................... 152 1.1 1.2 1.3 栅格布局 .................................................................................................................... 152 UI 框架 ....................................................................................................................... 158 控件模型 .................................................................................................................... 161 2 模型层开发 ................................................................................................................ 164 2.1 2.2 2.3 2.4 2.5 模型定义 .................................................................................................................... 165 数据载入到模型中 ................................................................................................... 165 数据的新增与修改 ................................................................................................... 166 数据的删除 ................................................................................................................ 166 获取模型中的数据 ................................................................................................... 167 3 页面管理控制器 ....................................................................................................... 168 3.1 3.2 4 五 1 1.1 1.2 1.3 1.4 1.5 创建 app .................................................................................................................... 168 初始化界面及数据模型 ........................................................................................... 168 与服务器端交互 ....................................................................................................... 168 后端工程开发 ................................................................................ 173 持久层 ........................................................................................................................ 175 持久化方案 ................................................................................................................ 175 数据库连接池的使用规范 ....................................................................................... 189 多种数据源的适配 ................................................................................................... 193 阿里云适配规范 ....................................................................................................... 195 对象标识(OID)组件 ........................................................................................... 196 4 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
2 服务层 ........................................................................................................................ 201 2.1 2.2 业务服务 Service ..................................................................................................... 201 事务框架 .................................................................................................................... 204 3 业务层 ........................................................................................................................ 207 3.1 3.2 六 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Spring MVC ............................................................................................................. 207 Controller ................................................................................................................. 215 典型业务场景 ................................................................................ 219 登陆与认证 ................................................................................................................ 219 功能简介 .................................................................................................................... 219 工作流程 .................................................................................................................... 220 与 Spring 整合认证配置 ........................................................................................ 223 无状态会话开发规范 ............................................................................................... 232 验证策略 AuthenticationStrategy ..................................................................... 235 认证使用 .................................................................................................................... 236 登陆过程分析 ............................................................................................................ 238 2 权限模型 .................................................................................................................... 242 2.1 2.2 2.3 2.4 2.5 功能简介 .................................................................................................................... 243 工作流程 .................................................................................................................... 243 关键功能 .................................................................................................................... 245 API 接口 .................................................................................................................... 255 开发步骤 .................................................................................................................... 271 5 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
2.6 扩展机制 .................................................................................................................... 294 3 多语 ............................................................................................................................ 297 3.1 3.2 3.3 3.4 国际化和本地化规范 ............................................................................................... 297 国际化和本地化需求场景 ....................................................................................... 297 多语实现的技术方案 ............................................................................................... 298 时间和时区 ................................................................................................................ 300 4 参照 ............................................................................................................................ 301 4.1 4.2 4.3 4.4 4.5 相关配置 .................................................................................................................... 301 参照前端配置 ............................................................................................................ 302 树表型参照 ................................................................................................................ 303 树形参照 .................................................................................................................... 308 表格参照 .................................................................................................................... 310 5 流程平台 .................................................................................................................... 311 5.1 5.2 5.3 5.4 流程平台简介 ............................................................................................................ 311 流程部署 .................................................................................................................... 313 流程功能开发 ............................................................................................................ 315 流程图的设计 ............................................................................................................ 364 6 缓存 ............................................................................................................................ 376 6.1 6.2 分布式缓存 ................................................................................................................ 376 阿里云适配规范 ....................................................................................................... 380 7 业务锁 ........................................................................................................................ 381 6 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
7.1 7.2 分布式锁组件配置 ................................................................................................... 382 分布式锁组件使用 ................................................................................................... 382 8 调度任务 .................................................................................................................... 383 8.1 8.2 8.3 8.4 8.5 调度任务简介 ............................................................................................................ 383 调度任务设计原则 ................................................................................................... 384 调度任务配置 ............................................................................................................ 384 调度任务使用 ............................................................................................................ 388 调度任务管理平台 ................................................................................................... 389 9 分布式服务框架 ....................................................................................................... 392 9.1 9.2 9.3 Restful 服务开发规范 ............................................................................................. 392 WebService 服务开发规范 ................................................................................... 395 Dubbo 微服务开发规范 ......................................................................................... 399 10 安全框架 .................................................................................................................... 403 10.1 iUAP 安全架构 ......................................................................................................... 403 10.2 安全设计原则 ............................................................................................................ 404 10.3 安全编码原则 ............................................................................................................ 406 10.4 安全编码规范 ............................................................................................................ 418 七 1 1.1 1.2 开发规范 ....................................................................................... 435 开发规范 .................................................................................................................... 435 组件与包名命名规范 ............................................................................................... 435 JAVA 编程规范 ......................................................................................................... 436 7 / 446 用友 UDN 技术社区 udn.yonyou.com 用友技术学院
分享到:
收藏