elphi 三層框架 DataSnap 的服務器端設置:
DataSnap 框架有三個模塊:DataSnap Server,Server Module,DataSnap Client Module。
當創新新的 DataSnap Server時,會產生三個文件,分別是:
1)ServerForm 窗口文件; ----- 可以擴展了此功能,使得 ServerContainer 可以啟動、停止服務,並記錄會話的產生、關閉。
2)ServerContainer 服務容器;
主要是:DSServer,DSTCPServerTransport,DSHTTPService,DSAuthenticationManager 它們相互引用,對應控件在面板上,但一般只需要一個。
變動重點是:TDSServerClass 類的增加,在控件面板上可以找到相應的控件 ,可以增加多個。
需要增加一個時注意:1)從面板由拉一個控件;2)設置其屬性:Server 為已有的:DSServer;3)LifeCycle 屬性一般設為:Sesssion,也可以是Server或者Invocation。 4)別忘記設置事件:OnGetClass, 在事件中,引入(Uses)服務模塊,並 PersistentClass := utXX.TXX;
3)XXSysModu 服務模塊
每增加一個服務 Server Module,需要新創建一個文件,繼承 class(TDSServerModule) ,可以從 File/New/Other.../DataSnap Server/Server Module 菜單進行。
增加 數據庫連接組件 TFDConnection,TFDQuery,TDatasetProvider 等,向客戶端提供服務。TDatasetProvider 的Options 參數,必須選上:poAllowCommandText,即允許客戶端向 服務器端直接 傳送 SQL 命令。
這樣產生的服務類,進行 Uses 引入到 ServerContainer 服務容器,並通過“容器”增加 TDSServerClass 類,通過事件OnGetClass,獲得服務!!!
提示,備忘!