对象引用未保存的瞬态实例 - 在刷新错误之前保存瞬态实例
我有 3 个实体。我将使用一对多关系映射彼此实体。
产品收费详情有
@Data
@Entity
public class ProductChargeDetail extends SuperEntity<ProductChargeDetailDto> {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(nullable = false)
private Long productChargeDetailId;
@ManyToOne
@JoinColumn(name = "fuel_type")
private FuelType fuelType;
@ManyToOne
@JoinColumn(name = "cal_type")
private CalculationType calculationType;
@Override
public ProductChargeDetailDto toDto(ModelMapper modelMapper) {
if (this.fuelType != null)
productChargeDetailDto.setFuelTypeCode(this.fuelType.getFuelType());
if (this.calculationType != null)
productChargeDetailDto.setCalType(this.calculationType.getCalType());
return productChargeDetailDto;
}
}
燃料类型有
@Data
@Entity
public class FuelType {
@Id
@Column(nullable = false, length = 50)
private String fuelType;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "fuelType", orphanRemoval = true)
private List<ProductChargeDetail> productChargeDetailList = new ArrayList<>();
}
计算类型具有
@Data
@Entity
public class CalculationType {
@Id
@Column(nullable = false)
private String calType;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "calculationType", orphanRemoval = true)
private List<ProductChargeDetail> productChargeDetailList;
}
我有一个问题,当我保存产品时,它抛出这样一个错误。我试着用@ManyToOne(cascade = CascadeType。ALL)到productChargeDetail,但是当我保存一个产品时,它显示一个来自应用程序的错误复制错误。FuelType和CalculationType在表中已经有值。在这种情况下,当我保存它时,applicatoin保存重复错误。
引起:org.hibernate.瞬态实例:对象引用未保存的瞬态实例-刷新前保存瞬态实例:com.misyn.muw.common.entity.ProductChargeDetail.fuel类型-
如果您引用的实体已经存在,您应该通过EntityManager#get参考
创建这些实体的实例,该实例由JpaRepostory#getOne
使用。这样,您将收到来自HiberNate的延迟代理,您不需要为此进行任何级联。
对象引用未保存的临时实例-在刷新之前保存临时实例。 我有一个2类组织实体和应用实体。组织和应用程序有多对多的关系。 组织实体 申请实体有 组织运作impl。JAVA 我的问题是,我是否使用applicationRepository保存applicationEntity。save(applicationEntity)也会像我的cascade类型一样保存组织。所有的一切都在现场定义。我犯了这个错误。
我有两个例子。一个是项目,一个是模块。< code >一对多关系。 我将模块设置到项目中。然后使用。第一次,因为数据库中没有记录,所以项目和模块可以保存到数据库中。然而,第二次,因为我不需要创建新项目,我只创建新模块,然后将模块设置回项目。 发生异常。 对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例。 有什么办法可以解决这个问题吗谢谢
上图显示了表之间的关系。 AddressType表包含静态值,如mailing、home、work等。 在AddressTypeRel模型类中,我有一个带有多对一注释的AddressType对象
错误: 我还尝试了,但是 病因是什么?显然,我设置了nullable=true(在数据库中也是如此),尽管我有这个错误。有什么想法吗?
user.java是 我正在使用这个视频中提到的存储库,是 和 这个问题有什么更好的解决办法吗?
我试图将用户详细信息存储到以下表中:user、role、user_role。当试图保存详细信息时,它会引发以下错误。 托管刷新时出错[org.hibernate.transientPropertyValueException:object引用未保存的瞬态实例-在刷新前保存瞬态实例 这里user_role是父表,user和role表是子表。我尝试了cascade=cascade.all。即使它也会犯