Hibernate保存GeologicalClass对象时section_id字段为null的问题求助
Hibernate保存GeologicalClass对象时section_id字段为null的问题求助
嘿,各位大佬,我遇到个头疼的小问题,翻遍了手头能找的资料都没解决,来这儿求助了!
我现在要通过Post请求新建一个GeologicalClass对象(命名确实不太合理,但任务要求就是这样),可是保存到数据库的时候,关联的section_id字段总是被存成null。
下面是我的相关代码:
Section实体类
@AllArgsConstructor @NoArgsConstructor @Getter @Setter @Entity @Table(name = "sections") public class Section { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private Long id; @Column(name = "name", nullable = false) private String name; private boolean isDeleted; @OneToMany(cascade = CascadeType.PERSIST, mappedBy = "section") private List<GeologicalClass> geologicalClasses; }
GeologicalClass实体类
@AllArgsConstructor @NoArgsConstructor @Getter @Setter @Entity @ToString(exclude = "section") @Table(name = "geological_classes") public class GeologicalClass { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(columnDefinition = "bigint") private Long id; private String name; private String code; private boolean isDeleted; @JsonBackReference @ManyToOne(fetch = FetchType.EAGER, optional = false) @JoinColumn( name = "section_id", insertable = false, nullable = false) private Section section; }
Service层实现
@Service public class GeologicalClassServiceImpl implements GeologicalClassService { @Override public GeologicalClass createGeologicalClass(GeologicalClass geologicalClass) { return geologicalClassRepository.save(geologicalClass); } }
Controller层代码
@RestController @RequestMapping("/api/geological-classes") @RequiredArgsConstructor public class GeologicalClassController { @PostMapping @ResponseStatus(HttpStatus.CREATED) public RestResponse createGeologicalClass(@RequestBody GeologicalClass geologicalClass) { GeologicalClass createdGeologicalClass = geologicalClassService.createGeologicalClass(geologicalClass); return new RestResponse(createdGeologicalClass); } }
麻烦各位帮忙看看问题出在哪儿,怎么才能让section_id正确写入数据库呢?
备注:内容来源于stack exchange,提问作者Roman Kalinin
相关产品推荐
相关产品推荐

