把系统做推广,和其他部门的原系统整合的时候,遇到很多问题。
我简单的把这些变化概括为两个方面:
一是,数据形态变化。变现到程序上就是java对象,数据库table的差异。要把这些数据整合,需要对这些数据进行++--,做好映射。
二是,数据流向变化。就是数据流向做调整,从单路或者固定路线,增加了额外的分支。或者整合流通路线,重新规划数据流向。表现在程序上就是可能会增加一些中间业务,或者一些中间表等。
所以,遇到问题也要从这两个方面着手分析处理方案。
从就有的遗留系统做了异常处理和国际化的改进:
对于程序的输入和异常首先做了如下分类:
输入部分:
名称:比如标签(比如厂别账号),逻辑主语(比如用户)
form验证:比如空值,长度,类型等
完整性检测:属性缺失,不和规定
逻辑验证:比如重复,有引用,不存在
系统异常:比如运行时,网路,资料库异常等不可知异常
异常处理:分为几个大类
form验证异常(输入异常)
完整性匹配异常(系统表对接,对不为空或者有特殊限制的栏位进行校验)
逻辑异常
系统异常
远端服务异常:跨资料库,或者跨系统,远端系统抛出异常信息
因为牵涉到资料库间资料同步问题,所以准备了一个排程,批量同步数据。里面对原有的方法改用了批量方法,每20笔提交一次(以免数据过多导致处理connection超时,而被强制回收,proxool的连接池会存在强制回收问题,不会等待事务完成。)。