情况是这样的
现在有两套软件,一套我们研发的软件(b/s),一套是另一家公司研究的软件(c/s)。如果我们的软件需要对方的软件提供它们系统里的数据供我们查询,那么用什么方法好呢?我想了几种方法:
1、一个是对方直接给出它们的表,标明表字段的详细说明,我们自己去查;缺点:我们不知道提取数据的业务规则是什么,虽然数据库里有数据,但是很可能跟它们软件上最后显示的数据不一样。因为显示之前要经过一些业务规则的运算,我们不知道。
2、提供WebService封装好提取数据的方法,供我们调用;缺点:对方还得写WebService接口供我们调用,另外小弟我水平低,只知道WebService是.Net里的,其它非.Net的软件有办法写么?或是它们有自己的类似WebSevice的东西。
3、如果不想让我们知道它们数据库的情况,为了保密,就提供视图,视图里是计算好的数据;缺点:这个好像没啥缺点吧,我是想不出来有啥缺点。
4、我们建好几张表,里边列出想要的数据字段,让对方往里边填。缺点:好像比较费劲,比如说它们的软件里新添了一些数据,那就需要同步往我们提供好的表里也计算好数据插进去。各位高手们有没有碰到这些情况,你们都采用了什么解决方案呢?希望各位高手不吝赐教,谢谢大家。另外小弟我水平低,如果上边的解决方案很弱智,望各位高手多多包涵。

解决方案 »

  1.   

    关键是如何使两个不同架构(b/s、c/s),不同语言写的软件,相互提供数据呢?通过什么方法?
      

  2.   

    2楼说的对接口 interface
    通常表现的就是一个dll
      

  3.   

    约定接口...Web Service只是其中一种选择...对你是最合适的...对方提供的接口你只管遵守...他如何实现跟你没关系...不必考虑...
      

  4.   

    2.WebService封装 ...都可以使用.4.写一个服务程序,定时将对方数据库里的新数据更新到你的数据库中
      

  5.   

    可以通过数据库
    也可以通过web service似乎web service是种不错的选择.
      

  6.   

    用一个数据库可以吗,假如你b/s的程序把数据保存进去了,你c/s的程序去读这个数据库的数据
      

  7.   

    双方协商罗,不管是xml,数据库双方都要知道
      

  8.   

    2.WebService封装 ...都可以使用.4.写一个服务程序,定时将对方数据库里的新数据更新到你的数据库中
      

  9.   

    用webService是最好的
    优点:
    1、XML通讯,通用
    2、成本低
    3、后期好维护
    4、不破坏架构
    5、面向对象,封装性好
      

  10.   

    要想省事,就直接把数据库连接.表字段含义告诉它. 
     给相应的权限比如只读.折中就给webservic想要对方便利就写一个dll,
    给他引用.通过这个dll来取数据
      

  11.   

    1.通过数据库一级的调用应该比较省事(通过对方数据库的存储过程,视图)
    2.另外:WebService也可以(与什么语言开发,运行在什么平台上似乎都没有关系),只提供接口,你按照它的借口说明调用就行了
    给它参数,它怎么运行就不管了,也管不了
      

  12.   

    用WEBSERVICE
    后期维护起来也会方便
      

  13.   

    相信我,大部分情况下,系统集成webservice是最好的选择。
    并一定要.net才可以,什么语言都可以的,webservice只是实现了soap协议,其他语言也有相应的技术,通信的时候只是xml信息,跟语言没关系。
      

  14.   

    webservice 是不错的选择,封装性很好.最好结果集使用xml格式返回. 非.net的程序只要可以发送HTTP请求,应该都可以调用webservice的.开放数据库的办法,如果后期别人的系统修改了数据结构,恐怕改代码会很痛苦. 开放自己的表给别人,一是有风险,二是出错了, 扯皮的机会就会大大的增加.