2
我使用Hibernate + Spring和JSF在休眠中使用级联类型
我在Hibernate中使用类似@OneTomany的关系时遇到问题。例如:
@Entity
@Table(name = "book")
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String description;
private String image;
private int numberOfPages;
private Date releaseDate;
private String title;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "category_id")
private Category category;
当我删除CascadeType.ALL并保存包含类别的书籍时,类别Id变为null。
任何人都可以帮助我解决这个问题吗?
编辑:这是我的单元测试导致错误时,我remve CascadeType.ALL
BookDao bookDao = (BookDao) applicationContext.getBean("bookDao");
Category category = new Category();
category.setTitle("Title");
Book book = new Book();
book.setCategory(category);
bookDao.save(book);
long id = book.getCategory().getId();
assertTrue(id > 0);
这本书是否包含已经在数据库中的类别? – millimoose
这是我的单元testthat导致错误,当我remve cascadeType.ALL BookDao bookDao =(BookDao)applicationContext.getBean(“bookDao”); \t \t Category category = new Category(); \t \t category.setTitle(“Title”); \t \t Book book = new Book(); \t \t book.setCategory(category); \t \t bookDao.save(book); \t \t long id = book.getCategory()。getId(); \t \t assertTrue(id> 0); – user985813
您应该通过编辑您的问题来发布其他代码,而不是将其置于评论中。我冒昧地为你解决问题。您可以删除此评论。 –