首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

两个项目之间传递参数有关问题 - 大神进

2013-03-12 
两个项目之间传递参数问题--- 大神进情况1.两个ssh项目 oms与 GiftERP2.调用的是GiftERP的一个Goods表,需

两个项目之间传递参数问题 --- 大神进
情况
1.两个ssh项目 oms  与 GiftERP
2.调用的是GiftERP的一个Goods表,需要将表数据返回给oms项目
3.首先我oms的页面有一个查询所有商品的action链接  指向 GiftERP项目中 它
获取数据 返回到我的action 我如何获得

个人想法:
session共享 但是这样不好 因为我的oms项目没有映射ERP的产品等表的ORM 
xml         这个可以ERP写入本地后返回oms的action 然后oms在本地读取  可是我还是觉得不对

请问大家有什么好方法 action session xml ssh 共享
[解决办法]
提供接口 两个项目可以互相访问
[解决办法]

引用:
引用:提供接口 两个项目可以互相访问我有写接口啊 
但是我的数据如何获取  还有最后还是将数据展现在我oms的页面中

httpClient互调接口获取想要的,你想怎么展示就怎么展示.....
[解决办法]
activeMQ通讯技术
[解决办法]
两个项目进行数据交互可以用WebService技术呀!你可以了解一下
[解决办法]
表同步一下,有一种技术叫dblink,数据库不够档次的话就写个同步程序同步一下,或者用ETL工具来同步,不考虑性能的话用webservice来做查询
[解决办法]
引用:
引用:引用:引用:提供接口 两个项目可以互相访问我有写接口啊 
但是我的数据如何获取  还有最后还是将数据展现在我oms的页面中
httpClient互调接口获取想要的,你想怎么展示就怎么展示.....

引用 5 楼 jerrey17 的……
public void postOne(String url, Object task)
{
try
{
HttpPost httpost = new HttpPost(url);

List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("appID", task.getAppID()));
params.add(new BasicNameValuePair("cpID", task.getCpID().toString()));
params.add(new BasicNameValuePair("appToken", task.getAppToken()));
params.add(new BasicNameValuePair("price", task.getPrice().toString()));
params.add(new BasicNameValuePair("receipt", task.getReceipt()));
params.add(new BasicNameValuePair("userDeviceID", task.getUserDeviceID()));
httpost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));

HttpResponse remoteResponse = this.httpClient.execute(httpost);

int responseState = remoteResponse.getStatusLine().getStatusCode();

if (HttpStatus.SC_OK == responseState)
{
// 请求成功
HttpEntity responseEntity = remoteResponse.getEntity();

if (responseEntity != null)
{// 返回信息

String strEntity = EntityUtils.toString(responseEntity, HTTP.UTF_8);

System.out.println(strEntity);
}

}
} catch (Exception e)
{
e.printStackTrace();
}
}

给你个简单的示例
[解决办法]
两个项目之间进行数据交换用webservice技术
[解决办法]
对于这个问题,我们可以做个简单的分析:
1、两个项目,暂且分为A和B。
2、A调取B的反馈信息。
3、B需要做一些较为复杂查询等业务操作。
4、问题来了,如果保证A和B之间的参数正常准确的传递、减少A和B之间的数据传递量以及避免相应的程序问题。
分析:
1、A和B是两个独立的项目,就要考虑到它们之间的通信渠道,这点很关键,也就是请求、响应和返回结果的过程;采用直接而有效的通信通道是保证项目之间的数据传输的正确性,无论是HTTP形式还是WEBSERVICE都可以,但是要详细分清A和B之间的各自的业务代码的复杂度。


2、A项目只负责调取;B项目不但要负责基本的业务处理还要负责将完整的结果交予A,所以B项目才是关键。
3、A和B需要一个通道,上面我们说过了,这个通道实际承载着较大的任务量。所以,该通道需要独立出来;还有,B在处理业务的时候,其最后处理的时间或长或短,是不可控的。
4、最后,建议用WEBSERVICE来进行处理。说到这儿,LZ可能会喷我,其实不然:HTTP请求方式是有时间限制的,超时将会关闭。
5、哦,对了。因为会有诸多的请求,可以考虑加入线程处理,将请求放入队列,这样可以避免请求无果。

热点排行