【发布时间】:2021-03-29 11:45:22
【问题描述】:
问题表:
public class Question {
@Id
@GeneratedValue(strategy= GenerationType.IDENTITY)
private Integer id;
@Column
@NotNull
private String questionSentence;
@OneToMany(mappedBy = "question",cascade = CascadeType.REMOVE)
private List<Answers> answers;
}
答案表:
public class Answers {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column
@NotNull
private String answer;
@ManyToOne
@JoinColumn
@JsonIgnore
private Question question;
}
我想在我从 RequestBody 收到的问题中保存一个答案列表,但它不起作用:
public class QuestionService {
@Autowired
private QuestionRepository questionRepository;
public ResponseEntity<Question> update
(Integer questionId,
Question question) {
Question tempquestion = = questionRepository.findById(questionId);
tempquestion.setAnswers(Question.getAnswers());
return ResponseEntity.ok(questionRepository.save(tempQuestion));
}
tempQuestion 输出正常(我从所有答案中得到一个列表),但“questionRepository.save(tempQuestion)”并没有保存它。 (如果我想保存其他东西,比如字符串回答句等,它可以工作,但如果我想保存表格列表,则不行。
我会做错什么?
【问题讨论】:
-
尝试使用 cascade = CascadeType.ALL
标签: java database spring-boot service repository