2010-08-07 42 views
4

問候Overflowers,n層系統中數據模型之間的映射!

我真的分層的過度思考這個問題

這裏是典型的映射:

關係DB模式<>服務器OO模型<>系列化型號<>客戶端OO模型

<>代表我目前使用Java˚F雙向映射

或者我的後端和ExtJS(JavaScript庫)。 從Java和JSON對象序列化是有意義的。什麼是你推薦的JSON序列化庫?爲什麼?

您對數據庫方面的建議如何?我真的很討厭關係型OO映射的開銷和複雜性。我喜歡obdb支持乾淨的JPA2,但它很昂貴。不幸的是,它似乎是本地支持JPA2的唯一OO db。您對此有什麼想法,特別是在涉及API清潔度和性能時?

如何使用關係數據庫管理數據存儲?例如,你是否使用包裝類來包裝數據集?或直接操作數據集而不映射到對象?您是否直接映射到JSON,例如,從那些數據集?

發送前壓縮/加密序列化數據的任何東西?以及如何使用JavaScript反轉回來?

我真的想找API的乾淨和快速棧做我的工作

預先感謝您!

+0

關於這個問題的任何好書嗎?它與設計模式有關嗎? – geeko 2010-08-09 11:51:45

回答

0

您是否承諾在服務器上使用Java?如果沒有,帶有MongoDb數據庫的node.js可能會消除鏈中的幾個鏈接,因爲Mongo允許您存儲JSON文檔,並且您的服務器應用程序是使用Javascript編寫的。所以所有的語言,所有的數據表示和node.js + mongo都提供了令人驚歎的性能和可伸縮性。您還可以消除SQL,將數據庫數據直接作爲Javascript對象處理。您也不要定義數據庫模式 - 您存儲JSON文檔。

正是出於這些原因,我個人將我所有的個人服務器端開發轉移到了node.js和mongo。更簡單,可能更快,更容易擴展。

您還可以在整個堆棧中使用相同的語言,並且Javascript在重構功能上比Java更具表現力。