我將我的數據庫表映射到我的java對象。一般來說,我用複數形式命名我的表格,因爲拿着書籍信息的表格被稱爲BOOKS。 java對象代表了一本書,應該被稱爲Book。類似的作者/作者等做O/R映射時的命名約定
另一方面,它的一種簡單的給予相同的域對象和表。
是否有某種人們遵循的命名約定?我想這適用於一般的應用程序,而不僅僅是在做O/R映射時。
我將我的數據庫表映射到我的java對象。一般來說,我用複數形式命名我的表格,因爲拿着書籍信息的表格被稱爲BOOKS。 java對象代表了一本書,應該被稱爲Book。類似的作者/作者等做O/R映射時的命名約定
另一方面,它的一種簡單的給予相同的域對象和表。
是否有某種人們遵循的命名約定?我想這適用於一般的應用程序,而不僅僅是在做O/R映射時。
您的第一個想法是現貨。
對象應該是單數,因爲每個對象都是單獨的。
表格應該是複數形式,因爲表格包含全部內容。
查看Ruby on Rails中內置的命名約定,它們是相關的。
我在我的ASP.NET應用程序中使用了SubSonic,並且在命名ActiveRecord類時使它具有複數形式。這比風格更像一個標準。
我更喜歡使用Invoice
而不是Invoices
,因爲我是通常是一次處理1條記錄。
我通常只是確保我在任何地方都使用相同的標準,並且我還使用邏輯名稱作爲我的命名。
所以書籍成爲像DbBooks,作者變成DbAuthors等
我們使用單數的表名和OM類。它更有意義,對我來說,說
person.last_name
比
people.last_name,
無論我在寫SQL或Java (當然,這將是person.lastName,但你明白了)。
CJ Date不使用複數名稱,也不應該。唯一的例外是「銷售」一詞。除此之外,請使用單數名稱。
比較
user.email =?和account.value在(1,2,3)
到
users.email =?和帳戶。在(1,2,3)
或(最壞的選項)
users.email值=?和(1,2,3)中的account.values
jOOQ從您的數據庫模式生成Java類。建模表的類將被稱爲與表本身相同,例如。
AUTHOR
>Author
BOOKS
>Books
建模對象(或記錄)的類將與 「Record
」 爲後綴:
AUTHOR
>AuthorRecord
BOOKS
>這是非常直觀和通用的,不管你的表被調用。見
我輸入了一個非常類似的迴應,因爲這一個。在網絡世界中,Ruby on Rails是它處理ORM的標準,因此尋找答案是一個很好的建議。 +1 :-) – 2009-06-02 19:57:22
您可能會認爲表名應該是單數,因爲每行代表實體的單個實例。 – GreenieMeanie 2009-06-02 20:20:48