[英]Basic attribute type should not be IDao - intellij message
我在Entity對象中收到以下消息?
基本屬性類型不應為IDao
像這樣使用它的地方:
@Entity
@Table
public final class MyEnity {
@Resource(name = "Dao")
private IDao dao;
我知道這個名字不好,但是將我的Dao(注有存儲庫)注入到注解為休眠實體的Domain對象中又是什么問題呢? IDao是由Dao類實現的接口...
IDao
似乎是注入到實體中的處理元素,並且您不打算保留它。 如果是這樣,則應將其標記為transient
以便ORM在對實體執行CRUD操作期間將其忽略。
@Resource(name = "Dao")
private transient IDao dao;
順便說一句,我看不到您的實體是@Configurable
。 您如何計划將dao
注入其中? ORM MyEntity
使用默認構造函數創建類型為MyEntity
的新對象,並調用設置器以從數據庫中設置值。 您的IDao dao
將不會被注入,因為這樣的實例不是spring-managed bean。 您必須將MyEntity
標記為@Configurable
以使其能夠進行彈簧管理,以便使用new
運算符創建的實例將獲得資源注入。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.