社保核心平台三版本地化开发规范_详细设计_第1页
社保核心平台三版本地化开发规范_详细设计_第2页
社保核心平台三版本地化开发规范_详细设计_第3页
社保核心平台三版本地化开发规范_详细设计_第4页
社保核心平台三版本地化开发规范_详细设计_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

n 文档编号B11 RC C04 JB HXPT 03 版本号1 0 发放号F01 受控状态受控 社会保险管理信息系统核心平台三版社会保险管理信息系统核心平台三版 本地化开发规范本地化开发规范 详细设计规范详细设计规范 编制部门 社会保险管理信息系统核心平台三版项目组 编制人 魏文麟编制日期 2007 8 13 审核人 魏文麟审核日期 2007 8 20 批准人 批准日期 北京利博赛社保信息技术有限公司北京利博赛社保信息技术有限公司 社会保险管理信息系统核心平台三版本地化开发规范 第 1 页 文档修改历史 版本版本修改记录修改记录修改日期修改日期修改人修改人 1 0初稿20080710魏文麟 社会保险管理信息系统核心平台三版本地化开发规范 第 2 页 目录目录 1引言引言 4 1 1 目的 4 1 2 背景 4 1 3 输入的文档 4 1 4 术语 4 1 5 参考资料 5 1 6 读者对象 5 1 7 假定和约束 5 2详细设计规范详细设计规范 6 2 1 总体分层结构 6 2 2 业务处理部分的分层结构 7 2 3 业务组件的分层结构 7 2 4 日志规范 8 2 4 1职责 8 2 4 2实现方式 8 2 4 3命名规则 8 2 4 4类的继承 8 2 4 5代码模板 8 2 5 事务规范 9 2 5 1职责 9 2 5 2实现方式 9 2 5 3命名规则 10 2 5 4类的继承 10 2 5 5代码模板 10 2 6 业务回退规范 11 2 6 1职责 11 2 6 2实现方式 11 2 6 3命名规则 12 2 6 4类的继承 12 2 6 5代码模板 12 2 7 数据级权限的规范 15 2 7 1职责 15 2 7 2实现方式 15 2 7 3命名规则 15 2 7 4类的继承 15 社会保险管理信息系统核心平台三版本地化开发规范 第 3 页 2 7 5代码模板 15 2 8 持久化规范 16 2 8 1职责 16 2 8 2实现方式 16 2 8 3命名规则 16 2 8 4类的继承 17 2 8 5代码模板 17 2 9 异常规范 17 2 9 1职责 17 2 9 2实现方式 17 2 9 3命名规则 18 2 9 4类的继承 18 2 9 5代码模板 18 2 10 组件设计规范 19 2 10 1接口层 19 2 10 1 1 职责 19 2 10 1 2 实现方式 19 2 10 1 3 命名规则 19 2 10 1 4 类的继承 19 2 10 1 5 代码模板 19 2 10 2业务处理层 20 2 10 2 1 职责 20 2 10 2 2 实现方式 21 2 10 2 3 命名规则 21 2 10 2 4 类的继承 21 2 10 2 5 代码模板 21 2 10 3业务实体层 23 2 10 3 1 职责 23 2 10 3 2 实现方式 23 2 10 3 3 命名规则 23 2 10 3 4 类的继承 23 2 10 3 5 代码模板 23 2 10 4业务传输对象 26 2 10 4 1 职责 26 2 10 4 2 实现方式 26 2 10 4 3 命名规则 26 2 10 4 4 类的继承 26 2 10 4 5 代码模板 26 社会保险管理信息系统核心平台三版本地化开发规范 第 4 页 1引言引言 1 1 目的目的 统一项目组详细设计阶段在系统设计上的要求 1 2 背景背景 项目用户劳动和社会保障部项目经理魏文麟 系统用途 社保核心平台三版的总体建设目标为 按照金保工程的总体规划 以社保 核心平台一 二版为基础 以城市级社会保险经办业务为核心 以实现基 本养老保险 失业保险 基本医疗保险 工伤保险 生育保险主体业务经 办和基金管理过程信息化为最终目标 在总结各地业务经办模式的基础上 面向最新的业务模式 研究制定一套面向经办的参考标准规范 并基于该 标准规范开发一套实用 适用 灵活的软件平台 进一步降低应用软件本 地化工作量 实现与金保工程其他统一应用软件的对接 立项时间2006 年 12 月 当前阶段详细设计阶段 备注 1 3 输入的文档输入的文档 无 社会保险管理信息系统核心平台三版本地化开发规范 第 5 页 1 4 术语术语 无 1 5 参考资料参考资料 无 1 6 读者对象读者对象 项目经理 软件工程负责人 愿意了解核三详细设计的方法 规范的人员 1 7 假定和约束假定和约束 社会保险管理信息系统核心平台三版本地化开发规范 第 6 页 2详细设计规范详细设计规范 2 1 总体分层结构总体分层结构 核核心心处处理理框框架架 编编码码处处 理理器器 协协议议识识 别别器器 安安全全处处 理理器器 前前端端控控 制制器器器器 任任务务分分 发发器器 流流程程控控制制层层 服服务务层层 缓缓存存服服 务务 日日志志服服 务务 安安全全服服 务务 页页面面流流 服服务务 其其它它服服 务务 请请 求求 处处 理理 层层 视视 图图 服服 务务 接接 口口 层层 视视 图图 服服 务务 实实 现现 层层 业业 务务 组组 件件 层层 Fa a de 业业务务组组件件层层 持持 久久 化化 层层 Window32客客 户户端端程程序序 客客户户端端 用用户户表表现现层层 控控制制逻逻辑辑层层 业业务务组组件件视视图图服服务务 组组件件技技术术 无无关关层层 数数 据据 库库 数数据据服服 务务层层 数数据据库库 代代码码实实现现部部分分 规规范范约约束束部部分分 产产品品 部部分分 UI组组件件 html UI视视图图层层 UI组组件件 JS UI控控制制层层 UI组组件件 Data UI模模型型层层 浏浏览览器器 DLL 代代理理 算算法法 数数据据 访访问问 对对象象 业业务务 对对象象 业业务务回回 退退 数数据据权权 限限 事事务务服服 务务 规规则则引引 擎擎 整整体体结结构构依依赖赖规规范范约约束束 1 1 2 3 45 6 7 8 9 社会保险管理信息系统核心平台三版本地化开发规范 第 7 页 2 2 业务处理部分的分层结构业务处理部分的分层结构 请请 求求 处处 理理 层层 视视 图图 服服 务务 接接 口口 层层 视视 图图 服服 务务 实实 现现 层层 业业 务务 组组 件件 层层 Fa a de 业业务务组组件件层层 持持 久久 化化 层层 业业务务组组件件视视图图服服务务 组组件件技技术术 无无关关层层 数数 据据 库库 数数据据服服 务务层层 数数据据库库 规规范范约约束束部部分分 产产品品 部部分分 算算法法 数数据据 访访问问 对对象象 业业务务 对对象象 3 45 6 7 8 9 2 3 业务组件的分层结构业务组件的分层结构 业业 务务 组组 件件 层层 Fa a de 业业务务组组件件层层 算算法法 数数据据 访访问问 对对象象 业业务务 对对象象 6 7 社会保险管理信息系统核心平台三版本地化开发规范 第 8 页 2 4 日志规范日志规范 日志可细分为系统日志与业务日志两种日志 2 4 1 职责职责 1 系统日志 记录控制台上打印出来的信息记录到系统日志中 2 业务日志 开发人员可根据业务需要 使用框架提供的 API 来记 录相关信息到业务日志中 2 4 2 实现方式实现方式 1 系统日志 log4j 2 业务日志 com lbs leaf sysmanage log util Bizlogger 中提 供的 API 2 4 3 命名规则命名规则 无 2 4 4 类的继承类的继承 日志不需要继承框架提供的任何父类 2 4 5 代码模板代码模板 1 系统日志 工程调试 Logger log Logger getLogger TempeleteAction class log info show BeanHelper getProperties dto 控制台显示 社会保险管理信息系统核心平台三版本地化开发规范 第 9 页 在控制台上打印出来的信息 均会被记录到数据库的 syslog 表中 除我们 打印的信息外 其他信息为框架输出 也一并记录到系统日志中 2 业务日志 参考 3 1 3 业务回退规范中使用的 API 来记录回退业务 2 5 事务规范事务规范 2 5 1 职责职责 一次事务负责把多个步骤捆绑成了一个单一的 不成功则成仁的操作 其 它并发的事务是看不到在这些步骤之间的中间状态的 并且如果发生了一些问 题 导致该事务无法完成 那么所有这些步骤都完全不会影响数据库 2 5 2 实现方式实现方式 1 AOP 的方式 这种方式只能在 VSImpl 类中使用才有效 不能在其它类 中使用 2 API 的方式 这种事务控制方式可以在任何地方使用 如果有特殊业 务不能在 VSImpl 中控制事务 必须将事务控制放到业务组件层的时候 就可以 使用这种方式 社会保险管理信息系统核心平台三版本地化开发规范 第 10 页 2 5 3 命名规则命名规则 使用 AOP 方法启事务时 将需要事务控制的代码单独放到一个方法名以 TA 结尾的 Protected 方法中即可 使用 API 方式启事务无特殊命名规则 2 5 4 类的继承类的继承 事务控制不需要继承框架提供的任何父类 2 5 5 代码模板代码模板 使用 AOP 方式启事务 使用AOP事务 方法名 TA后缀 public void deleteObj Templete tdto 使用AOP启事务 AOP事务不支持私有方法 需要AOP支持的私有TA方法应先修改 为protected deleteObjTA tdto 启事务方法 使用方法名 TA后缀方法来启事务 使用AOP事务 方法名 TA后缀 protected void deleteObjTA Templete tdto TempleteBC tbc new TempleteBC tbc deleteObj tdto 使用 API 方式启事务 使用api事务 直接调用事务api启事务 社会保险管理信息系统核心平台三版本地化开发规范 第 11 页 public void delete Templete tdto 使用API启事务 useAPIDelete tdto 启事务方法 使用API来启事务 使用api事务 直接调用事务api启事务 protected void useAPIDelete final Templete tdto 使用事务处理工具 在事务上下文中执行ICommand对象的execute方法 TransUtil trans new ICommand public Object execute TempleteBC tbc new TempleteBC tbc deleteObj tdto return null 2 6 业务回退规范业务回退规范 2 6 1 职责职责 业务回退是采用自动记录数据库变更日志 结合业务日志或依靠开发人员 自己定义回退逻辑控制回退操作 回退时将历史数据还原的方式 包括记录业 务日志 回退日志 业务表与数据摘要表 2 6 2 实现方式实现方式 1 AOP 的方式 这种方式只能在 VSImpl 类中使用才有效 不能在其它类 中使用 2 API 的方式 在数据库数据发生修改时 存在两种情况 单条修改和 批量修改 单条修改使用 Bizlogger rolLog ICommand biz String bizid 方 法来保存记录业务日志与数据摘要信息 重写 execute 方法 在 execute 方 社会保险管理信息系统核心平台三版本地化开发规范 第 12 页 法中保存业务日志 保存数据摘要信息 保存修改的业务 当批量修改时 对 于提交的 Collection 类型数据进行循环 单条记录业务日志与数据摘要 2 6 3 命名规则命名规则 使用 AOP 方法启事务时 将需要事务控制的代码单独放到一个方法名以 ROLTA 结尾的 Protected 方法中即可 使用 API 方式启事务无特殊命名规则 2 6 4 类的继承类的继承 业务回退不需要继承框架提供的任何父类 2 6 5 代码模板代码模板 使用 AOP 方式启事务与回退 public void update final Rollogdemo rld 使用APO启事物同时支持通用回退 updateROLTA rld protected void updateROLTA final Rollogdemo rld final Date startTime Bizlogger currentTime 获得业务开始时 间 final BizDigestInfoParameters infops infops new BizDigestInfoParameters final BizDigestDataParameters dataps dataps new BizDigestDataParameters final long opseno DbRollUtil getOpseno 根据业务流水号 字段名称 字段描述 是否可见添加到数据摘要信息表中 infops addBizDigestInfo opseno id 序号 true infops addBizDigestInfo opseno col1 数据1 true infops addBizDigestInfo opseno col2 数据2 true infops addBizDigestInfo opseno col3 数据3 true infops addBizDigestInfo opseno col4 数据4 true final BizDigestDataBean bean new BizDigestDataBean 5 根据名称和值保存到数据摘要数据列表中 社会保险管理信息系统核心平台三版本地化开发规范 第 13 页 bean 0 new BizDigestDataBean id rld getId bean 1 new BizDigestDataBean col1 rld getCol1 bean 2 new BizDigestDataBean col2 rld getCol2 bean 3 new BizDigestDataBean col3 rld getCol3 bean 4 new BizDigestDataBean col4 rld getCol4 dataps addBizDigestData opseno bean BizDigestUtil save infops dataps 保存摘要 persistence updateObj rld 保存更新信息 Bizlogger rolLog commonRolExample startTime 记录业务日志 使用 API 方式启事务与回退 1 单条修改 public void update final Rollogdemo rld final BizDigestInfoParameters infops infops new BizDigestInfoParameters final BizDigestDataParameters dataps dataps new BizDigestDataParameters 开始记录 Bizlogger rolLog new ICommand public Object execute long opseno DbRollUtil getOpseno 根据业务流水号 字段名称 字段描述 是否可见添加到数据摘要信息表中 infops addBizDigestInfo opseno id 序号 true infops addBizDigestInfo opseno col1 数据1 true infops addBizDigestInfo opseno col2 数据2 true infops addBizDigestInfo opseno col3 数据3 true infops addBizDigestInfo opseno col4 数据4 true BizDigestDataBean bean new BizDigestDataBean 5 根据名称和值保存到数据摘要数据列表中 bean 0 new BizDigestDataBean id rld getId bean 1 new BizDigestDataBean col1 rld getCol1 bean 2 new BizDigestDataBean col2 rld getCol2 bean 3 new BizDigestDataBean col3 rld getCol3 bean 4 new BizDigestDataBean col4 rld getCol4 dataps addBizDigestData opseno bean BizDigestUtil save infops dataps 保存摘要 persistence updateObj rld 保存更新信息 return null 社会保险管理信息系统核心平台三版本地化开发规范 第 14 页 commonRolExample 指定业务标识 2 批量修改 public void update final Collection rlds final BizDigestInfoParameters infops infops new BizDigestInfoParameters final BizDigestDataParameters dataps dataps new BizDigestDataParameters for int i 0 i 0 i final String aae140 String aae140List get i final Aa08 aa08 Aa08 ip retrieveObj Aa08 class aae140 sb append aa08 getAae175 if i 0 sb append return sb toString corpContriPlanRecheck的中文名称 复核单位征缴信息 param ae23的中文名称 当事人征缴计划事件 return void void corpContriPlanRecheck final Ae23 ae23 ip saveObj ae23 社会保险管理信息系统核心平台三版本地化开发规范 第 23 页 2 10 3 业务实体层业务实体层 2 10 3 1职责职责 业务实体是对象实体在系统中 表示 一般情况下与数据库表是一一对应 的 负责实体 表示和数据 传递不包含任何逻辑性内容 2 10 3 2实现方式实现方式 业务实体层实现方式 Javaclass 2 10 3 3命名规则命名规则 业务实体层的命名规范为 表明即业务实体类名 如 Aa10 java 2 10 3 4类的继承类的继承 业务实体层不需要继承框架提供的任何父类 2 10 3 5代码模板代码模板 Ab05的中文名称 单位险种缴费申请及缴费规则核定事件 public class Ab05 implements Serializable private static final long serialVersionUID 6054761363639395418L aab033的中文名称 征收方式 private String aab033 aae140的中文名称 险种类型 社会保险管理信息系统核心平台三版本地化开发规范 第 24 页 private String aae140 aaz050的中文名称 单位险种缴费申请及缴费规则核定事件ID private Long aaz050 aab001的中文名称 单位ID private Long aab001 default constructor public Ab05 minimal constructor public Ab05 final Long aaz050 this aaz050 aaz050 full constructor public Ab05 final Long aaz050 final Long aab001 final String aae140 final String aab033 this aaz050 aaz050 this aab001 aab001 this aae140 aae140 this aab033 aab033 Override public boolean equals final Object other if other instanceof Ab05 return false final Ab05 castOther Ab05 other return new EqualsBuilder append getAaz050 castOther getAaz050 isEquals public Long getAab001 return aab001 社会保险管理信息系统核心平台三版本地化开发规范 第 25 页 public String getAab033 return aab033 public String getAae140 return aae140 public Long getAaz050 return aaz050 Override public int hashCode return new HashCodeBuilder append getAaz050 toHashCode public void setAab001 final Long aab001 this aab001 aab001 public void setAab033 final String aab033 this aab033 aab033 public void setAae140 final String aae140 this aae140 aae140 public void setAaz050 final Long aaz050 thi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论