交换主类
设置交换状态为30分钟以上和交换状态为正在交换中的交换数据源,为预备交换状态
swapCommonService.updateSwapStatus();
update t_swap_metadata t set t.swap_status='00' where t.swap_status='01'
and (sysdate - cast(t.swap_modifytime as date)) > 0.02
查找记录各个城的交换编号和服务器网址为xybz=1且下载对象为0
查询出远程交换对象的服务器网址信息
List<TSwapConfig> tSwapObjects = swapCommonService.findSwapObject();
from TSwapConfig t where t.xyBz = 1 and t.localObject =0
查询出本地对象
TSwapConfig localSwapObject = swapCommonService.findLocalSwapObject();
from TSwapConfig t where t.xyBz = 1 and t.localObject =1
循环发送交换
for (TSwapConfig tSwapObject : tSwapObjects) {
创建一个WEBSERVICE连接
Service service = new ObjectServiceFactory()
.create(DataSwapService.class);
这里获取webservice是对方的服务器中的
用于接收数据的
类连接地址
String url = tSwapObject.getObjectUrl() + "services/dataSwapService";
两者数据库中标识对方的都是01,所以代码一样但是获取的对象不同
接收方的数据接收类建立
DataSwapService dataSwapService = (DataSwapService) factory
.create(service, url);
创建要发送的数据
ExchangeDTO transferData = new ExchangeDTO();
查询出要交换的数据
swapInstanceList = swapCommonService
.getSwapData(tSwapObject.getSwapObject());
数据查询类(SwapCommonService的getSwapData方法)