后台调度解析xml处理数据二次开发

前端之家收集整理的这篇文章主要介绍了后台调度解析xml处理数据二次开发前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

最近**化工项目需做二次开发

主要实现功能是:对方ERP给出一些xml文件,这些文件没有通过前台手工录入方式处理数据,而是通过用友实现

为了同步数据库,因此需解析对方所给xml,后台调度自动运行。


二次开发解决步骤:

1.寻找合适的曾经开发过此功能的项目。***化工项目

2.将此项目的此功能代码拷过来,放入正在开发的项目中去。

本项目为,新增一个独立的文件ufia,所有解析xml文件程序都在此中。

3.了解系统与此解析XML功能关系:

  • web.xml中 一项File-listener Listener----->CheckNewFileListener

<listener>

<listener-class>com.winsafe.drp.util.fileListener.CheckNewFileListener</listener-class>

</listener>

  • File-listener文件:CheckNewFileListener ---->FILEMONITOR
读取配置文件调用fileMoniter

Properties p = JProperties.loadProperties("ftpFilePath.properties",JProperties.BY_CLASSLOADER);
FILEMONITOR = new FileMonitor(p,1000);
FILEMONITOR.start(false);

  • File-moniter文件(继承runnable接口):start,run方法 FILEMONITOR -->importData

通过fileMoniter传参10000每10秒去查找相应目录下xml文件,若存在,则进行解析。

解析成功后则进行xml数据调用importdata文件处理。

Document document = FileUtil.readXml(tempTargetDir + "/" + fileList[i].getName());
ImportSysData.importData(document,fileList[i].getName());

  • 进入importData进行各种处理。
4.将项目搬过来之后,出现很多错误之类,跟进代码,排查错误
此次主要有:
一些表中所用字段 一些表需要增加(相应修改pojo,xml,数据库),并将修改数据库sql语句保存下来,生产中需要重新执行。
一些与XML解析调用方法增加
需要明确问题:当表增加字段时,一般不会出现问题。因为只多不少原则。
增加调用方法时,一般不会出现问题,因为方法可以多,一直放那里,增加方法之前代码不发生调用,因此没有关系。
解决所有错误,使其不进行报错,并能编译,布置。

5.发布文件后,扔进xml进行测试XML解析,跟踪代码,发现报错问题,使项目能够大体上跑通,处理正确。
遇到问题:xml测试数据在数据库中没有找到,product中nccode字段根据xml设值,warehourse中nncode字段根据xml设值。
状态代码,之前是0,1,2,3,4,5 现在是文字
不管细节,先特定的设一些报错值,使其能流程走下去,并解析成功。
6.解析流程成功后,进入代码细节处调整开发。
  • 通过手工录入一条数据,与xml解析一条数据,从后台数据库作对比,进行数据有关细节处理。
达到目标:使从后台xml解析一条数据与前台手工录入一条数据前台展示相同。后台存储字段也相同。
  • 再进行控制有关的细节处理,如状态

猜你在找的XML相关文章