2015-10-07 90 views
5

我正在使用休眠4.1.9。 我的代碼是@暫不工作休眠

@Transient 
private String ldapIdTemp; 

import javax.persistence.Transient; 

仍然在Hibernate查詢,它不工作,並把屬性查詢。查詢片斷(assetasset0_.ldapIdTemp爲ldapIdTemp16_0_)

一部分,我不知道我做錯了。

回答

7

你可以嘗試的領域創建setter和getter和與@Transient註釋get方法,具體如下:

private String ldapIdTemp; 

@Transient 
public String getLdapIdTemp() { 
    return ldapIdTemp; 
} 

public void setLdapIdTemp(String ldapIdTemp) { 
    this.ldapIdTemp = ldapIdTemp; 
} 
+1

這正是我的問題,謝謝 –

4

這在很大程度上取決於您如何在Entity或類層次結構「集成」這一領域。此外,字段屬性 -access可能會導致您的設置出現問題。有關詳細說明,請參閱此post

在你的情況,我可以想像,你可以:

  1. 混合字段和屬性的訪問在實體繼承策略
  2. 基於XML的使用對Hibernate在應用程序配置。

在兩種情況下JPA 2.0/2.1 specification在第2.3.1節中明確規定:

它是如果不能確定一個缺省訪問類型錯誤和接入類型不明確的註釋的裝置指定 或XML描述符。 混合 批註在實體層次結構中的字段和屬性上的位置而不顯式指定 訪問註釋未定義。

請檢查您的持久Entity類要麼 OR 財產基於註解。