后台调度解析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解析一条数据与前台手工录入一条数据前台展示相同。后台存储字段也相同。
  •  再进行控制有关的细节处理,如状态



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值