【发布时间】:2018-09-14 22:38:20
【问题描述】:
我有 1 个没有 getter 和 setter 的实体类。
我在数据库中有 4 条记录。当我尝试创建 rest 服务并从 db 查询这些数据时,hibernate 返回 4 个空元素。
[{},{},{},{},{}]
Hibernate 尝试将记录设置到实体中,但由于没有 setter 方法而失败。
那么为什么hibernate不会抛出像“没有setter,设置失败......”这样的异常,它正在尝试设置并返回空列表。
告诉我原因,这是一个错误还是它在我不知道的不同日志路径中返回错误?
编辑:这里是 Entity.class
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "entry_table", schema = "public")
public class Entry {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ENTRY_ID")
private Long entryId;
@Column(name = "USER_NAME")
private String userName;
@Column(name = "USER_ENTRY")
private String userEntry;
public Entry(Long entryId, String userName, String userEntry) {
this.entryId = entryId;
this.userName = userName;
this.userEntry = userEntry;
}
public Entry() {
}
}
【问题讨论】:
-
Hibernate tries to set records into entity but fails because there is no setter method.你怎么知道 hibernate 正在尝试设置值但由于缺少设置器而导致 bcos 失败?实例变量是可访问的还是私有的? -
这是 [{},{},{},{},{}] 来自 REST api 的响应还是您检查了 DAO 层?
-
实体类的实例变量是否可以从外部访问?为了在数据库中保存一个新的实体实例,你是如何填充这些实例变量的?
-
你能发布你的实体类吗?
-
@MadhusudanaReddySunnapu 因为它返回空列表。
标签: spring hibernate rest spring-boot jpa