其實三層與兩層比較優點有兩點,一是支持很多的客戶端,兩層的資料庫連接超過一定限度,服務器就吃不消了;二是網路安全的需要,資料庫服務器可以劃在資料庫區,一般的客戶端不能直連資料庫,而可以連接中間層服務器。將三層分為表現層、邏輯層和持久層我不大認同,因為兩層已能解決邏輯封裝的問題了,如果中間層封裝邏輯的話,會非常慢。而說三層簡化了系統維護我也不認同,因為兩層、三層都可以做到在線升級。而三層與B/S結構比較的優點是客戶端操作可以做的很靈活,能充分利用客戶端的硬體資源。目前我在做一套開發三層的VCL組件,目標是做到象開發兩層程式一樣開發三層程式,目前已完成了70%的開發量了。[email protected] QQ:835730950
uj5u.com熱心網友回復:
我們都等著看樓主的大作啦。。。。。。uj5u.com熱心網友回復:
三層只是一個美麗的傳說uj5u.com熱心網友回復:
三層不是傳說!呵呵!
uj5u.com熱心網友回復:
同樣搬個凳子慢慢等
uj5u.com熱心網友回復:
三層,二層,按需而言,不能說那個好,需求高的話,就只能用三層,如客戶量,安全性,方便維護性,開發開發周期,等等,這些因素決定,期待LZ 的三層DEMO 發布。呵呵,uj5u.com熱心網友回復:
期待巨作..uj5u.com熱心網友回復:
看到有網友關注TCPDAC,就簡單介紹一下,現在只能截取幾個開發測驗的界面。中間層與資料庫的連接用的是UniDAC,中間層與客戶端用的是Indy,有以下幾個控制元件:
TCPDBServer:封裝了UniConnection 和Indy的idTCPServer,支持資料庫連接池。
TCPDBClient:封裝了Indy的idTCPClient,用于sql命令和結果的傳輸。
TCPQuery :資料庫組件,可以打開資料庫表(Open)和執行sql陳述句(ExecSQL),設計期即可打開。
TCPDBClient要支持事物,事物部分只做了一半。
計劃還有TCPStoredProc和TCPScript,TCPScript的功能要與UniScript接近。
現在還不支持CacheUpdate,估計要UniDAC推出下一個版本才能支持。
目前是對Oracle資料庫開發的。
截圖連接:http://download.csdn.net/detail/runsheng678/4508627
uj5u.com熱心網友回復:
樓主的大作啦。。。。。。同樣搬個凳
uj5u.com熱心網友回復:
Indy,定位不夠高uj5u.com熱心網友回復:
三層分為表現層、邏輯層和持久層?那是mvc之類的另一種分層
delphi的3層、多層,多是網路架構的分層:在c和s之間增加一個中間層(socket或web server/app)
midas、ast之類的,就是為了delphi的3層的開發與2層一樣簡單,只可惜比較脆弱
我自己也做了一套 以web app(isapi) 為中間層的框架,只是開發模式還不是 設計時可見,而是運行時請求查詢、増刪改,只是避免了直連資料庫
uj5u.com熱心網友回復:
上傳個Demo:http://download.csdn.net/detail/runsheng678/4674706
uj5u.com熱心網友回復:
你的這種封裝是不是不利于面向物件的開發啊。我建議應該充分考慮用CLEINTDATASET這個控制元件。uj5u.com熱心網友回復:
因為單純的SQL陳述句的處理不利于對某個欄位的細節處理,如各種計算欄位,關聯欄位等。uj5u.com熱心網友回復:
沒有考慮CLEINTDATASET,是因為我的TCPQuery本身就是為三層架構設計的,計劃下一個版本支持CacheUpdate。TCPQuery支持關聯欄位和主細表。uj5u.com熱心網友回復:
一個美麗的傳說uj5u.com熱心網友回復:
要么2層,要么加個ws的擼過……uj5u.com熱心網友回復:
呵呵。。。。。uj5u.com熱心網友回復:
建議使用XE3的DateSnap,它可以支持多種作業系統,并且服務器可以回應TCP/IP,HTTP,客戶端支持桌面、WEB和案桌。。。。uj5u.com熱心網友回復:
支持討論, 以后可能也會接觸到資料庫uj5u.com熱心網友回復:
最近比較忙,整理一下,將TCPDAC for XE2發布一下,并帶一個demo。http://download.csdn.net/detail/runsheng678/4812549
uj5u.com熱心網友回復:
不錯,向樓主學習uj5u.com熱心網友回復:
其實,我在做三層的uj5u.com熱心網友回復:
to:lyhoo163DataSnap 固然好,但開發麻煩一些,同樣一個資料庫表控制元件,在DataSnap 中要布置好幾個控制元件,并且程式修改升級的時候不但要動客戶端,同步還要修改中間層。舊的兩層系統升級為三層系統很難。這就是我為什么要開發這套控制元件的原因。
uj5u.com熱心網友回復:
我做的 以web app(isapi) 為中間層的框架,也可以做成通用的資料庫網關,資料庫結構變了,中間層無須任何修改
客戶端也可以通過ini配置來完成表結構的自動適應,程式無須修改
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/154480.html
標籤:數據庫相關
上一篇:TStringlist的問題
