簡體   English   中英

從MySQL DB檢索數據后的空實體

[英]Empty Entity after data retrieving from MySQL DB

我有以下實體

import static javax.persistence.GenerationType.IDENTITY;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

import org.hibernate.annotations.Type;

@Entity
@Table(name = "Privilege", uniqueConstraints = @UniqueConstraint(columnNames = "name"))
public class Privilege implements java.io.Serializable {
private static final long serialVersionUID = 8357379972506504809L;

private Long privilegeId;
private String name;
private String description;

public Privilege() {
}

@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "privilegeID", unique = true, nullable = false)
public Long getId() {
    return this.privilegeId;
}

public void setId(Long privilegeId) {
    this.privilegeId = privilegeId;
}


@Column(name = "name", unique = true, length = 45)
public String getName() {
    return this.name;
}

public void setName(String name) {
    this.name = name;
}


@Column(name = "description", length = 65535)
@Type(type="text")
public String getDescription() {
    return this.description;
}

public void setDescription(String description) {
    this.description = description;
}

}

它在MySQL數據庫中映射表。 我正在嘗試通過以下QueryDSL代碼檢索數據

public Privilege findByName(final String name) throws EntityNotFoundException {
        Privilege workgroupPrivilege = new JPAQuery(getEntityManager())
                .from(privilege)
                .where(privilege.name.eq(name))
                .uniqueResult(privilege);
        if (workgroupPrivilege == null)
            throw new EntityNotFoundException("Cannot find entity "
                    + Privilege.class.getCanonicalName()
                    + " with name <" + name + ">");
        else
            return workgroupPrivilege;
    }

問題是findByName()代碼向我返回了特權實體對象的實例,但是其字段中的數據為空。 這意味着已正確完成Entity-DB Table綁定(否則我將擁有一個空的Privilege Entity實例)。

編輯:

Web應用程序將此字段添加到Privilege的空實例中

handler = org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer@48f52e0b

新增的字段是否可以解決問題?

對您來說可能是什么問題?

由於延遲加載數據,調試器沒有顯示任何數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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