2012-09-09 149 views

回答

5

其實規範不推薦,這是相當規範的約以下(除其他事項外):

  1. 公共或保護的無參數的構造函數必須存在。其他構造函數很好。
  2. 持久性字段不應該是公開的(保護,包可見和私人大聲朗讀)。
  3. 不會大聲說出最終的持久屬性或方法。

一些原因的限制是:

  1. JPA提供商需要創建實體的實例。如果類只包含帶有任意參數的構造函數,則JPA提供程序無法找出這些參數的值。
  2. 可能公開的可見性根本不是大聲朗讀,因爲字段不應該從課堂外直接訪問。或者,也許有更好的理由,但我沒有意識到這一點。
  3. 提供者想要創建代理,並且如果方法是最終的,這是不可能的。另外,屬性不應該是最終的,因爲那麼提供者不能爲它們賦值。

此外靜態持久屬性沒有太多意義,因爲爲什麼一個值會被實體的所有實例共享。

相關問題