java Hibernate关系错误
我目前正在思考如何在我的项目中修复hibernate中实体之间的关系。这个项目基本上是一个音乐管理的东西,所以有用户、歌曲和艺术家
一个用户可以有多首歌,一首歌可以被多人喜爱。 一首歌只有一个艺术家
实体如下所示: 用户:
public class User implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToMany
private List<Song> songs;
歌曲:
public class Song implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToMany(mappedBy = "songs")
private List<User> users;
@ManyToOne
private Artist artist;
艺术家:
public class Artist implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@OneToMany(mappedBy = "artist")
private List<Song> songs;
在一个方法中,我使用了一个简单的JPARepository来保存一些更改:
artistRepository.save(song.getArtist());
songRepository.save(song);
userRepository.save(requestUser);
然后我得到一个错误,我必须先保存trasient实体歌曲,这是有意义的。我想我在联系实体的时候搞砸了。有人能帮我吗
共 (0) 个答案