Java Hibernate和spring数据存储库,保存或更新后对象不完整

Java Hibernate和spring数据存储库,保存或更新后对象不完整,java,hibernate,spring-data-jpa,Java,Hibernate,Spring Data Jpa,通过spring数据存储库(扩展Crudepository)保存或更新此实体的对象后: @实体 @表(name=“财务数据”) 公共类FinanceData实现可序列化{ 私有静态最终长serialVersionUID=1L; @身份证 @列(unique=true,nullable=false) @GeneratedValue(策略=GenerationType.IDENTITY) 私有整数id; @OneToOne(fetch=FetchType.EAGER) @JoinColumn(na

通过spring数据存储库(扩展Crudepository)保存或更新此实体的对象后:

@实体
@表(name=“财务数据”)
公共类FinanceData实现可序列化{
私有静态最终长serialVersionUID=1L;
@身份证
@列(unique=true,nullable=false)
@GeneratedValue(策略=GenerationType.IDENTITY)
私有整数id;
@OneToOne(fetch=FetchType.EAGER)
@JoinColumn(name=“asset\u type”,null=false)
私有资产类型资产类型;
它只返回
assetType
属性的
Id
。这迫使我们在更新后执行findOne以获取完整信息

如何让休眠返回整个对象

它只返回
assetType
属性的Id

这是因为您自己的操作(如注释中所述)将所有其他字段设置为
null

当我尝试保存新的FinanceData记录时,我只设置属性
AssetType
的引用id,因为它们在记录
FinanceData
之前就存在了


与其只设置
Id
,从而覆盖所有其他字段,不如通过
Id
加载
AssetType
,并使用它。

您可以添加保存/更新代码示例,以及以后如何尝试检索AssetType吗?这是一个spring数据jpa存储库,我没有比这更多的代码:@repository public interface F在cedatarepository extends crudepository{}中,您说您正在强制findOne获取数据..因此jpa调用中有一些代码,而不是“findOne”(以及save、delete…)方法是从接口Crudepository扩展而来的它只是不100%清楚您的目标..显示如何创建条目、保存/更新条目..以及如何尝试检索其内容