我目前是錫耶納的開發商,但自從很長時間以來一直沒有開發。讓我解釋爲什麼我成爲這個項目的開發人員? 我去了錫耶納,因爲我想用Play + GAE,錫耶納似乎是GAE DB的一個好開端,我真的很想避免JDO/JPA。 然後,我開始真正感謝錫耶納的簡單明瞭,輕鬆簡單的方法和簡單的API。它並不假裝像JDO這樣的全功能於一身的抽象層,也不像JPA那樣是最大的標準DB API。它真的讓我想到了Python/Ruby中的數據庫API,它非常符合我的觀點:我想要一個簡單的數據庫API,它可以解決絕大多數問題,當我遇到更復雜的問題時,我會使用較低層的API,但肯定不是像hibernate這樣的抽象層。
使我的代碼在GAE DB或JDBC上工作的可能性也是一個很好的方面。 Siena並沒有假裝在兩個世界中提供完全相同的東西,因爲SQL和NoSQL不是真的兼容(但是ORM既不符合SQL模型:))。 但是再一次,能夠依靠幾個DB中相同的API是非常實用的。
最後,圖書館是一個罐子,你不必檢索整個宇宙來使用它。
因此,我逐漸成爲錫耶納的提交者,因爲我想參加這個不錯的小冒險。 現在,siena團隊正在開發一個新版本,保持相同的簡單API,帶來新的有趣功能,並真正改進所有後端代碼,使其更容易擴展以獲得新的DB支持。 錫耶納是一個務實的API由用戶體驗驅動的,這就是爲什麼我喜歡它;)
帕斯卡爾
您能否添加一些關於您在使用Hibernate時遇到的問題的細節?這將有助於我們消除具有相同限制的ORM框架。 – mlschechter 2011-01-16 03:59:12
好吧,Hibernate對batchjobs變得很困難,在這裏你做了很多寫操作。此外,Hibernate經常會有一些令人驚訝的效果,例如,如果您創建或更改了對象,它將自動保存。爲了說清楚,Hibernate是一個很好的可靠框架,但它很複雜和複雜。如果你是一名休眠專家,那真的很好,但除此之外,有時你可以通過試圖理解行爲來解決整個開發者日。錫耶納和Ebean承諾要模擬(這很容易證明),也是可靠的(沒有人確認)。 – niels 2011-01-16 08:54:41