Đầu tiên, bạn phải chú thích Event
lớp với @Document
:
@Document(collection = "events")
public class Event
{
// rest of code
}
Mã để thêm một sự kiện sẽ giống như sau:
@Repository
public class EventsDao {
@Autowired
MongoOperations template;
public void addTrack(Track t) {
Event e = template.findOne
(new Query(Criteria.where("id").is("1000")), Event.class);
if (e != null) {
e.getTracks().add(t);
template.save(e);
}
}
}
Lưu ý :Bạn nên thay đổi Event
lớp của String _id;
thành String id;
để ví dụ này hoạt động (hoặc thay đổi cụm từ truy vấn).
Chỉnh sửa cập nhật một bản nhạc cũng khá dễ dàng. Giả sử bạn muốn thay đổi tiêu đề của bản nhạc đầu tiên:
Event e = template.findOne(new Query(Criteria.where("_id").is("1000")), Event.class);
if (e != null) {
e.getTracks().get(0).setTitle("when i'm 64");
template.save(e);
}