1.关于需要传省市县代码的,写了个小功能将易安给过来excel,转成了json,放在前端,让顾客选择,而后后端对其保持信任。2.易安的请求是application/json但是其返回的是application/text的,并且返回的数据还进行了base64编码,restTemplate不能自动的把接收到数据自动转换成java对象。所以使用String对象进行接收,而后在手动转java对象。3. 请求使用的md5加密签名,而没有使用鉴权的接口,且使用md5方式。但是在联调的时候,老是报验签错误,我经过仔细检查代码,和充分沟通确定了两遍得到的报文很有可能是不一致的,最终找到原因为:对方使用的json工具没有把值为null,省去,而我们这里做了优化省去了值为null的对象。4. 分布式事务的清晰认知:系统间进行交互时,会出现数据不一致的现象。目前我们的主要消除数据不一致的手段主要有:重试:重试不应该一直重试,我们这里重试三次,读时间视第三方库响应时间而定,且被访问的系统,应当支持幂等性。定时任务扫描:通过主动的定时查询(对方需提供查询接口)或者被动的接收通知(对方提供定时通知)。人工干预:通过邮件通知,详细日志,追踪异常等最终消除数据不一致。5.在做这个项目的时候已经基本完成对重构改善既有代码的设计中文版的学习。目前最大的认识有四个:第一个:好名称相等于自带注释。第二个:用一个变量,一小组变量,一个函数,一小组函数,一个类,一小组类,来应对一个某个变化的诱因,让诱因的导致的改变,尽量集中在一个较小的范围内。第三个:随着产品的迭代升级,需要重构这项利器对对代码进行整形。第四个,我有必要在一个合适的时间段系统的学习下设计模式。目前我用的最多的重构应该是extract method, rename, change signature这三个。6.学习了项目中用到的两个设计模式builder模式和workflow模式