我目前正處於(非常)小型數據庫應用程序的研究階段。Java中的三層(非Web)數據庫應用程序 - 哪些API /技術適合?
這是一個本地慈善機構,只有3或4個客戶端機器將運行系統 - 但爲了從客戶端移除一些額外的邏輯,我傾向於使用三層架構(那裏是一個不斷通讀和更新的數據在適當的時候,客戶端不需要知道)
即客戶< - >服務器邏輯< - >數據庫
雖然我主管與Java本身和一些框架/庫,我不是特別熟悉哪些框架可以幫助我。很顯然,我將使用JDBC作爲數據庫的一部分,但客戶端和服務器之間的通信是目前的絆腳石 - 我並不是真的想要去任何接近原始套接字的地方,例如(過度殺傷,或者至少是另一個解決方案必須存在)
我已經問了幾位開發者,我知道他們對使用什麼API的看法,雖然他們一直很有幫助,但我仍然不太確定該去哪裏。到目前爲止,我聽說過RESTful的東西,SOAP,COBRA和其他一些技術。 SOAP是引起我注意的主要方式之一(因爲有一些很好的例子可以在普通的應用程序中使用它,而不僅僅是在網頁中使用它),但我仍然不確定該去哪裏 - 它似乎不適合一般(EJB也彈出來了,但是我聽到了很多針對它的仇恨 - 這是應得的嗎?)
感覺好像爲了找出'我最需要的工具'我真的需要學習每一個完整的'得到'他們(這顯然是不切實際的)
任何人都可以給我指導如何選擇這樣的API(當我以前沒有用過它們)或給我關於一些常見的問題,還是僅僅是一個實驗大量的案例,看看哪個最適合?
或者我可能完全錯過了標記,並有一個框架針對這種確切的情況沒有明顯的缺點?
非常感謝您的幫助。
編輯:
完全忘記提到其實際作用:這是不是非常複雜 - 慈善機構運行的傳輸方案,所以其持有的驅動程序,客戶端驅動里程記錄等信息進行查看和編輯驅動器唯一真正的複雜性,因爲可以將驅動程序分配給重複(正在進行)的驅動器,這些驅動器可以預見到會永遠持續下去。但是每個持續驅動的實例必須是獨一無二的,因爲它們可以單獨取消或編輯
我爲三層釣魚的主要原因是因爲作爲慈善機構(許多年長的志願者計算機用戶並不是非常可怕'精明')我可能會很頻繁地更新UI,以消除對新手用戶不太清楚的錯誤和位。所以我的計劃是先讓服務器和數據庫之間的後端絕對「無懈可擊」,然後將我所有的注意力都集中在用戶界面上,這樣我就可以繼續開發和迭代它,而不用擔心後端(因爲我會開發它的遠程部分,重點更新在客戶端稍微簡單)
所有這些屬性可能喊'做一個基於網絡的系統' - 這裏的障礙是,他們經過各種棘手的集成與一些應用程序他們已經運行了,我不確定我可以通過網絡應用程序完成(正確)。
也許你可以解釋你的應用程序有多複雜? – 2010-06-29 19:54:56
@Romain - 是的,你是完全正確的。相應地更新了問題,歡呼 – 2010-06-29 20:22:46