我有个需求是这样的,其他系统调用我系统的webservice接口,有验证,入库,匹配等相关工作。其中匹配时间十分长,那么我们不可能放在webservice里面进行匹配。所以我希望在return 一个对象后 我本地自己进行这批数据的匹配工作。 我看过一个方法,好像是可以通过线程的方式处理,我其实还想知道java时候存在回调这种说法。
JavaWeb服务

解决方案 »

  1.   

    可以采用异步的方法来处理匹配操作。像你说的,匹配需要的时间太长,不需要同步完成,那么在return前启动jms队列,将待匹配的对象放到队列中,那么监听器监听到队列有message时就会触发。
      

  2.   


    项目里面应该是没有配置JMS,不过十分感谢,逻辑说的十分清晰。
      

  3.   

    匹配怎么不就在webservice工程中写呢,就算花的时间再长也不需要再另一个系统中单独做匹配呀
    可以在接口项目中单独写一段用来处理匹配的一段程序,,,其实可以设置一个定时器,在其它系统调用接口时触发定时器,你大概判断一下验证 和入库 需要多长时间,,触发定时器的设置时间执行时间大于你估计的时间 即可, 把数据保存下来的好处就是  你匹配了一半 后,停电了,开机后还可以接着匹配,,,
      

  4.   

    finally{
    ...
    } 行不行