[英]Spring Rest Hibernate create nested object
我有3個模型PaymentPlan,PaymentPlanDetail,PaymentPlanElement
PaymentPlan有一個或多個PaymentPlanDetail,PaymentPlanElement有一個或多個PaymentPlanDetail,
存在以下關系:
public class PaymentPlan{
//
@OneToMany(mappedBy = "paymentPlan",cascade = CascadeType.ALL)
private List<PaymentPlanDetail> paymentPlanDetails= new ArrayList<>();
}
public class PaymentPlanDetail{
//
@ManyToOne(name = paymentPlanElementId)
private PaymentPlanElement paymentPlanElement;
}
public class PaymentPlanElement{
//
@OneToMany(mappedBy = "paymentPlanElement",cascade = CascadeType.ALL)
private List<PaymentPlanDetail> paymentPlanDetails= new ArrayList<>
}
我發送看起來像的請求對象
{
name:'foo',
paymentPlanDetails: [
{
name: 'bar',
paymentPlanElement:{
id: 12,
style: 'baz'
}
}
]
}
付款計划元素已經創建,我想發送JSON對象並保存包含付款計划詳細信息的付款計划,但是我收到了錯誤,即payment_plan_id is null
,有什么辦法可以在一次交易中做到這一點嗎?
編輯:我的PaymentPlan控制器
@RestController
@RequestMapping("/api/payment-plans")
@CrossOrigin(origins = "http://localhost:4200")
@RequiredArgsConstructor
public class PaymentPlanController {
private final PaymentPlanService paymentPlanService;
@PostMapping
public PaymentPlan create(@RequestBody PaymentPlan paymentPlan) {
return paymentPlanService.create(paymentPlan);
}
}
和PaymentPland DTO
public interface PaymentPlanDao extends JpaRepository<PaymentPlan, Integer> { }
@ManyToOne
@JoinColumn(name="paymentPlan")
private PaymentPlan paymentPlan;
Add this to Your PaymentPlanDetail Class As it will Map both the classes As Above map other class too.
希望能幫助到你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.