我想用Hibernate編寫一個程序。我的域名現已完成,正在編寫數據庫。休眠工作流程
我很困惑該怎麼做。我應該
- 使我的SQL表中的類,讓Hibernate的讓他們
- 還是在 數據庫中創建表和逆向工程並 讓休眠使我的班?
我聽到了某人的第一個選項,並閱讀了Netbeans站點上的第二個選項。
有沒有人知道哪種方法是正確的?
我想用Hibernate編寫一個程序。我的域名現已完成,正在編寫數據庫。休眠工作流程
我很困惑該怎麼做。我應該
我聽到了某人的第一個選項,並閱讀了Netbeans站點上的第二個選項。
有沒有人知道哪種方法是正確的?
這取決於你如何最好地概念化你正在編寫的程序。當我設計我的系統時,我通常會根據實體以及它們與彼此的關係來思考,所以對於我來說,我先從業務對象開始,然後編寫我的hibernate映射並讓hibernate創建數據庫。
其他人在數據庫表格方面能夠更好地思考,因爲這種方法最適合他們。所以你必須根據你的經驗決定哪一個適合你。
我相信你也可以做,所以這是優先選擇。
就我個人而言,我手寫這個地段。雖然Hibernate爲你創建數據庫做了一件合理的工作,但它並沒有像我自己做的那樣好。我假設對於它生成的Java類也是如此,儘管我從未使用過該功能。
關於生成的類(如果你去了類生成路線),我打賭每個領域都有一個getter/setter字段是否應該只讀或沒有人說線程安全和可變性,無法添加行爲,因爲如果重新生成類,它將被覆蓋。
加上當你是新的少,發生在場景後面的「魔術」更好,手動做一切將讓你更好地理解整個過程。 – serg 2009-08-26 15:13:46
@serg555:關於較少'魔法'的好處,+1。 – 2009-08-26 15:29:41
絕對寫入java對象,然後添加持久性並讓hibernate生成表。
如果你走另一條路,你會失去OOD和所有好東西的好處。
我主張先寫Java。儘管如此,這可能是個人偏好。
如果你分析你的域名,你可能會發現它們有些重複。
看看你的域名,看看你的重複。
重複是重複使用的機會。 你可以使用繼承或組合。 優點:
當然,如果你從頭開始,我會讓休眠做這項工作。我懶惰雖然:) – lucas 2009-08-26 15:00:18
我曾經聽過懶惰的程序員通常是最好的LOL – Zoidberg 2009-08-26 15:02:18