下图是数据库的样子。
这是我的代码:
播放列表.java
@Entity
public class Playlist {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;
private String name, persistentId;
private double playlistId;
@ElementCollection
@CollectionTable(name ="tracks")
private ArrayList<Double> tracks = new ArrayList<Double>();
@OneToMany(mappedBy="playlist")
Set<Song> songs;
public Playlist(String name, String persistentId, double playlistId, ArrayList<Double> tracks) {
this.name = name;
this.persistentId = persistentId;
this.playlistId = playlistId;
this.tracks = tracks;
}
public Playlist() {
}
主.java
Playlist p = new Playlist();
ArrayList<Double> tracks = new ArrayList<Double>();
for (int j = 0; j < tList.getLength(); ++j) {
Element track = (Element) tList.item(j);
Double trackId = (Double) x.evaluate("key[.='Track ID']/following-sibling::integer[1]", track,
XPathConstants.NUMBER);
tracks.add(trackId);
p.setTracks(tracks);
}
谁能告诉我我做错了什么吗?
最佳答案
尝试设置更多信息:
@ElementCollection
@CollectionTable(name ="tracks" , joinColumns=@JoinColumn(name="playlist_id"))
@Column(name="track")
private List<Double> tracks = new ArrayList<>();
关于java - 使用JPA将arraylist存储在mysql数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34180643/