现在是客户端直接连数据,业务逻辑都在客户端上,想加一个中间层,中间层没有业务逻辑,只是想让客户端不直接连接数据库,想问一下实现这个的话,需要使用delphi的哪几个控件,是datasnap么?需要对client做很大改动么?

解决方案 »

  1.   

    小弟我是Delphi初学者,对于控件、中间层等一些问题,不是很清楚,希望各位大侠能够帮助小弟
      

  2.   

    client要进行改造哦,改动还比较大
      

  3.   

    中间层,其实可以理解为一个转发的中转站,你把客户端提交的查询语句,直接自己提交到数据库,得到结果再转发回客户端。
    建议客户端所有操作都用提交sp来执行,中间层就是用sp来查询数据库,返回结果集,转发回客户端,即可。
    理论上就是这些。
      

  4.   

    先作一个一般的Application   
      然后再放入一个RemoteDataModal(这时你要输入类名),在这个RemoteDataModal中放上一个TDataSet(如:TTable),一个TDataSetProvider控件,设TDataSetProvider的DataSet属性为你放入的TDataSet,设置DataSet的Active:=true.运行你这个Application.这样服务器端就注册好了。   
        
      在客户端,放上一个ClientDataSet,TDCOMConnection设TDCOMConnection.Provider为你刚才的RemoteDataModal中的TDataSetProvider,设Connected为True.再设ClientDataSet的RemoteSever为你放入的TDCOMConnection,再选择ClientDataSet的ProviderName,最后设CientDataSet.Active:=True就OK了。如果一切正常的话服务器将自动激活。
      

  5.   

    看一下李维的《Delphi 5.x 分布式多层应用系统篇》
      

  6.   

    《Delphi 5.x 分布式多层应用系统篇》这本书是吧~好,我找下载个看看