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

雍寇德 2013-03-07 04:22:12
情况
1.两个ssh项目 oms 与 GiftERP
2.调用的是GiftERP的一个Goods表,需要将表数据返回给oms项目
3.首先我oms的页面有一个查询所有商品的action链接 指向 GiftERP项目中 它
获取数据 返回到我的action 我如何获得

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

请问大家有什么好方法
...全文
473 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
雍寇德 2013-03-11
  • 打赏
  • 举报
回复
引用 15 楼 shuai45 的回复:
……
我这块就是用webservice做的 我可以结贴了 谢谢大家
雍寇德 2013-03-09
  • 打赏
  • 举报
回复
引用 11 楼 justsmilence 的回复:
引用 6 楼 Think_Java_1993 的回复:引用 3 楼 justsmilence 的回复:引用 2 楼 Think_Java_1993 的回复:引用 1 楼 huage1998 的回复:提供接口 两个项目可以互相访问我有写接口啊 但是我的数据如何获取 还有最后还是将数据展现在我oms的页面中 httpClient互调接口获取想要的,你想怎么展示就怎么展……
谢谢我在写 写完我会跟大家说一下我的情况
shuai45 2013-03-09
  • 打赏
  • 举报
回复
对于这个问题,我们可以做个简单的分析: 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、哦,对了。因为会有诸多的请求,可以考虑加入线程处理,将请求放入队列,这样可以避免请求无果。
雍寇德 2013-03-09
  • 打赏
  • 举报
回复
引用 13 楼 cjj199153358 的回复:
两个项目之间进行数据交换用webservice技术
谢谢大家
引用 11 楼 justsmilence 的回复:
引用 6 楼 Think_Java_1993 的回复:引用 3 楼 justsmilence 的回复:引用 2 楼 Think_Java_1993 的回复:引用 1 楼 huage1998 的回复:提供接口 两个项目可以互相访问我有写接口啊 但是我的数据如何获取 还有最后还是将数据展现在我oms的页面中 httpClient互调接口获取想要的,你想怎么展示就怎么展……
我用xfire的webservice解决了 可是现在还是没法返回xml 我现在是返回的string 现在撑死2000条数据如果过多我解决不了拉 不知道我这样返回string合理么
引用 9 楼 qiuqiupeng 的回复:
表同步一下,有一种技术叫dblink,数据库不够档次的话就写个同步程序同步一下,或者用ETL工具来同步,不考虑性能的话用webservice来做查询
我用xfire的webservice解决了 可是现在还是没法返回xml 我现在是返回的string 现在撑死2000条数据如果过多我解决不了拉 不知道我这样返回string合理么
cjj199153358 2013-03-09
  • 打赏
  • 举报
回复
两个项目之间进行数据交换用webservice技术
  • 打赏
  • 举报
回复
引用 6 楼 Think_Java_1993 的回复:
引用 3 楼 justsmilence 的回复:引用 2 楼 Think_Java_1993 的回复:引用 1 楼 huage1998 的回复:提供接口 两个项目可以互相访问我有写接口啊 但是我的数据如何获取 还有最后还是将数据展现在我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();
		}
	}
给你个简单的示例
雍寇德 2013-03-07
  • 打赏
  • 举报
回复
引用 9 楼 qiuqiupeng 的回复:
表同步一下,有一种技术叫dblink,数据库不够档次的话就写个同步程序同步一下,或者用ETL工具来同步,不考虑性能的话用webservice来做查询
谢谢我是mysql的库有类似实现方式 不过我还是希望用类似接口 或这httpclient方式 我明天到公司会写一下 谢谢你
qiuqiupeng 2013-03-07
  • 打赏
  • 举报
回复
表同步一下,有一种技术叫dblink,数据库不够档次的话就写个同步程序同步一下,或者用ETL工具来同步,不考虑性能的话用webservice来做查询
雍寇德 2013-03-07
  • 打赏
  • 举报
回复
再说下 朋友们能给我一个范例么 或这网址 我去看一下 说实话网上太多不靠谱的东西
雍寇德 2013-03-07
  • 打赏
  • 举报
回复
引用 4 楼 a_b_a_b_a_b_a_b 的回复:
activeMQ通讯技术
这个有点过了 我不想用那么功能强大的 只要实现我的业务就好了 不过谢谢啊
雍寇德 2013-03-07
  • 打赏
  • 举报
回复
引用 3 楼 justsmilence 的回复:
引用 2 楼 Think_Java_1993 的回复:引用 1 楼 huage1998 的回复:提供接口 两个项目可以互相访问我有写接口啊 但是我的数据如何获取 还有最后还是将数据展现在我oms的页面中 httpClient互调接口获取想要的,你想怎么展示就怎么展示.....
引用 5 楼 jerrey17 的回复:
两个项目进行数据交互可以用WebService技术呀!你可以了解一下
你们两个说的这个我在看啊 初步选择的是erp这块action接受后用json oms使用httpclient 有没有范例 可否给我看一下
jerrey17 2013-03-07
  • 打赏
  • 举报
回复
两个项目进行数据交互可以用WebService技术呀!你可以了解一下
a_b_a_b_a_b_a_b 2013-03-07
  • 打赏
  • 举报
回复
activeMQ通讯技术
  • 打赏
  • 举报
回复
引用 2 楼 Think_Java_1993 的回复:
引用 1 楼 huage1998 的回复:提供接口 两个项目可以互相访问我有写接口啊 但是我的数据如何获取 还有最后还是将数据展现在我oms的页面中
httpClient互调接口获取想要的,你想怎么展示就怎么展示.....
雍寇德 2013-03-07
  • 打赏
  • 举报
回复
引用 1 楼 huage1998 的回复:
提供接口 两个项目可以互相访问
我有写接口啊 但是我的数据如何获取 还有最后还是将数据展现在我oms的页面中
huage 2013-03-07
  • 打赏
  • 举报
回复
提供接口 两个项目可以互相访问

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧