提问人:MarcinS 提问时间:11/15/2023 最后编辑:M. DeinumMarcinS 更新时间:11/15/2023 访问量:59
从 Spring Boot 2.7 迁移到 3.0 后,Spring Data 保存方法停止工作
Spring Data save method stopped to work after migration from spring boot 2.7 to 3.0
问:
我正在尝试将Spring Boot从2.7.17版迁移到3.0.5版,以及Hibernate(5->6.2.0 Final)。
我的项目中有父子关系(请看下面的代码)。要保存或更新 ,我正在使用界面中的方法(我的扩展了它)。
迁移后,该方法停止工作。在此语句中,我的意思是在调用方法之后成为“父”引用。在调用之前,引用已正确设置(同样,它在迁移之前正在工作)。
我不知道该朝哪个方向看,也不知道版本 3 中发生了什么变化。你能指出我可能出了什么问题吗?
先谢谢你。Order
save()
org.springframework.data.repository.Repository
OrderRepository
save()
OrderDetails
null
save()
save()
@Entity
@Table(name = "ORDER")
@NoArgsConstructor(access = AccessLevel.PRIVATE)
@ToString
@EqualsAndHashCode(onlyExplicitlyIncluded = true)
@NamedEntityGraph(
name = "Order.orderDetails",
attributeNodes = {
@NamedAttributeNode("orderDetails")
}
)
public class Order {
@Id
@Column(nullable = false)
@EqualsAndHashCode.Include
private String orderId;
@ElementCollection
@CollectionTable(
name = "SITE_SPECIFIC_DETAILS_COMMAND",
joinColumns = @JoinColumn(name = "orderId")
)
private Set<OrderDetails> orderDetails;
// rest of the code omitted for brevity
}
和
@Embeddable
@NoArgsConstructor
@AllArgsConstructor
@Builder(setterPrefix = "with")
@EqualsAndHashCode(onlyExplicitlyIncluded = true)
@Data
public class OrderDetails {
@ToString.Exclude
@Parent
@EqualsAndHashCode.Include
private Order parent;
@Type(JsonType.class)
@Column(columnDefinition = "jsonb")
private OrderData data;
// rest of the code omitted for brevity
存储库:
public interface OrderRepository extends Repository<Order, String> {
@EntityGraph(attributePaths = {“orderDetails”})
Order save(Order order);
}
答: 暂无答案
评论
@EntityGrapgh
save
parent
Repository
save
CrudRepository
JpaRepository
@Transactional
@Modifying