当前位置:首页 > 开发 > 研发管理 > 正文

二次开发中增加新需求的开发感想

发表于: 2011-12-21   作者:cuisuqiang   来源:转载   浏览次数:
摘要: 要在系统上增加几个Webservice接口调用的功能,也许对于经常使用Webservice的人来说没什么困难,可是我可是一直没有接触那个东西了。更困难的是,这个系统之前没有Webservice调用功能,也没有相应的java包,这个系统现在已经有二百多个java包了,一旦引起包冲突,那就更难办了。 其实每件事都有个过程,不管你做过没有。每件事都有个结果,不管你成功没有。 下面总结一下实现这个需求

要在系统上增加几个Webservice接口调用的功能,也许对于经常使用Webservice的人来说没什么困难,可是我可是一直没有接触那个东西了。更困难的是,这个系统之前没有Webservice调用功能,也没有相应的java包,这个系统现在已经有二百多个java包了,一旦引起包冲突,那就更难办了

其实每件事都有个过程,不管你做过没有。每件事都有个结果,不管你成功没有。

下面总结一下实现这个需求的一个过程:

1,首先确定业务需求。

将A系统中某数据传递到B系统,传递中有两个参数目录路径和发布单位是B系统提供树展示的数据,然后A系统展示并由客户选择,最后组装XML数据传递到B系统。其中会调用两套系统的接口。

2,技术实现,先做Demo。

之前也是玩过,不过是以前了,再说这东西都更新了老多了。我首先拿axis1做Demo,但是发现B系统接口是用axis2实现的,Demo调用好像有点问题。我又拿axis2做Demo,然后以A系统框架模式增加到项目中。最担心的问题还是出现了,包冲突。由于将来还要考虑更新,而大量的删除和增加包可能对原有系统造成影响,所以这个问题还是要认真去面对的。但是并不能发现包冲突的原因,为了赶时间先实现,我尽量少增加包,并删除重复包,最后在开发环境上是可以跑起来了。

3,将Demo和业务结合增加到系统中。

只有Helloworld是不行,需要应用到实际。在能够实现树的展示,Webservice调用等各项技术Demo和增加到项目中后,根据业务需求,设计需求实现的简便方式。包括XML组装与解析,配置文件读取,树的展示和数据取值,Webservice调用等的组合实现。系统中其他地方也会使用到该接口,所以我设计了通用调用方式,只要给我指定的实体设置值,传递给方法后就不用关心实现,只要接受参数判断是否成功,然后处理自己的业务就可以了。

4,初步联调测试,模拟真实环境。

在双方约定后布置开发使用的模拟环境,使用Linux,weblogic,Oracle等各项真实生产环境使用的版本。然后将各自程序打包部署调用看是否成功,如果有问题,双方都在,可以及时商讨和解决。这个过程我还是花了好长时间的,因为在tomcat上跑的程序,到weblogic上后又出现了包冲突,到apache官方bug库中查报错信息,是因为和weblogic.jar包引起的,要配置weblogic的启动顺序。可是我们的系统里面的许多标签实现都是基于该包的,其他未知情况就更多了,所以我不敢贸然增加这样的配置。

我咨询了接口提供者,以他们提供的调用方式进行调用,发现不会出现问题,于是我马上更改实现方式,由于XML组装解析和Webservice调用等功能都是我给包装好的,所以更改调用方式对于我的改动并不是那么大。

5,根据联调结果,适当调整。

比如我在测试时发现问题并更改了实现方式,那么我回去后代码的一些优化,检查还是必须的。另外,测试中也发现了一些业务上的不同意见,那么这是需要继续沟通和修改的。

6,真实环境上线调试。

无论你在你机器上实现是多么完美,无论你在测试环境运行是多么良好,真实环境,他有时候就是不给你面子

所以我们要制作更新包,首先在自己的测试环境测试更新是否能成功,然后到生产环境进行更新,更新是要备份的这个大家都是知道的,不再啰嗦。如果生产环境更新后可以正常运行,那么恭喜你了。

 

请您到ITEYE看我的原创:http://cuisuqiang.iteye.com

或支持我的个人博客,地址:http://www.javacui.com

 

二次开发中增加新需求的开发感想

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
Ambari是支持服务扩展的,只需要,恩,整理,打包,扔我们的服务到它的资源目录,重启服务器就可以
在CKEditor上增加添加水印的功能,相信大家都没有见过。 CKEditor的前身就是FCKEditor,FCKEditor自
移动领域应用的前途不言而喻,但多平台和同一平台多版本等兼容性的开发工作量可能会搞垮一个团队,
移动领域应用的前途不言而喻,但多平台和同一平台多版本等兼容性的开发工作量可能会搞垮一个团队,
就拿我现在使用的IDE-Eclipse来说,针对于二次开发中项目多而厚重,虽然弄懂了整套流程,但是实际开
在AO中,打开“文件A”的基本流程是: 1、创建对应“文件A”类型的WorkspaceFactory; 2、用Workspa
在AO中,打开“文件A”的基本流程是: 1、创建对应“文件A”类型的WorkspaceFactory; 2、用Workspa
令人烦恼的需求变更 在软件开发中,大家都会遇到过这样的问题:客户的一个新想法,就推翻了之前与客
本文已转至 http://www.zhoujingen.cn/blog/2933.html   上图是需求工程的组成部分,从图中可以看
上图是需求工程的组成部分,从图中可以看出,需求工程划分为两个部分:需求开发和需求管理。需求开
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号