2009-06-16 30 views
1

我有一個Java服務器應用程序和一個Flex客戶端應用程序。對於我的數據模型,我有典型的對象,如User等,它們在數據庫,服務器端Java代碼和客戶端AS代碼中基本相同。 I.即,我的AS和Java類的公共字段名稱相同的,並且具有相同的類型和值在具有相同的名稱作爲那些類的數據庫表中的相應字段中。我可以從單個模型描述創建服務器端Java類,OR映射和客戶端AS類嗎?

對於Java類和數據庫表進行匹配,我可以使用任何ORM。是否有任何工具可以從Java中自動生成AS類(並且理想情況下是匹配的Remoting樣板代碼)?我在BlazeDS有過短暫的樣子,但它似乎沒有有這樣的工具,至少我無法找到任何關於它。

當然,在一個完美的世界,我會形容我的數據項的一次,有DDL,Java代碼和AS代碼的所有自動生成。這種工具是否存在,是否足夠用?

哦,是的,這將是巨大的,如果源格式可以protobuf的文件...

注:這似乎是爲this one同樣的問題。那裏的答案似乎表明,至少沒有「每個人都使用」或具有高質量聲譽的通用工具。

回答

0

,我知道的是產生的AS服務器代碼類是從ColdFusion的CFC的autogenerating遠程類使用同一個ColdFusion內置到Flex Builder中的嚮導的唯一工具基於AMF的服務。

但是,記住的一點是,一旦Flex已收到序列化對象併爲其創建了一個實例mx.utils.ObjectProxy(這涉及到基於類和AMF的flex RemoteObject服務,但我想象一下協議緩衝區擴展將遵循相同的模式),將代理轉換爲Actionscript類的過程並不複雜。只要您的ActionScript類與名稱相匹配的序列化對象的屬性和序列化對象的類型相匹配的遠程對象的別名屬性或存取器,那麼你可以把對象代理遠程類,而不需要做任何額外的工作。

就像我說的,我不知道一個工具,你想要做什麼,但它不會是太困難創造一個工具,從您的Java類閱讀類型和公共屬性,或提取相同來自協議緩衝區文件的元數據,並從元數據中寫入一些Actionscript代碼。如果你找不到適合你需求的解決方案,你可以考慮編寫一個Ant任務或腳本或其他東西來爲你做。那就是我會做的。

相關問題