簡體   English   中英

基本屬性類型不應為IDao-intellij消息

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM