KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a question regarding MongoDB with Spring Data. I have these domain classes: @Document public class Deal { @Id private ObjectId _id; private Location location; private User user; private String description; private String title; private String price; private boolean approved; private Date expirationDate; private Date publishedDate; } @Document public class Location { @Id private ObjectId _id; private Double latitude; private Double longitude; private String country; private String street; private String zip; } @Document public class User { @Id private ObjectId _id; private String email; private String password; private String profile_image_url; private Collection<Deal> deals = new ArrayList<Deal>(); } With these domains I can successfully CRUD. There is only one problem. When saving a User with Deals, the deals and Location get _id set to null when saving them to MongoDB. Why can´t MongoDB generate unique id´s for embedded objects? The result after saving a User with one deal: { "_id" : ObjectId( "4fed0591d17011868cf9c982" ), "_class" : "User", "email" : "milo@gmail.com", "password" : "mimi", "deals" : [ { "_id" : null, "location" : { "_id" : null, "latitude" : 2.22, "longitude" : 3.23445, "country" : "Denmark", "street" : "Denmark road 77", "zip" : "2933" }, "description" : "The new Nexus 7 Tablet. A 7 inch tablet from Google.", "title" : "Nexus 7", "price" : "1300", "approved" : false, "expirationDate" : Date( 1343512800000 ), "publishedDate" : Date( 1340933521374 ) } ] } As you can see from the result, Deal and Location ID is set to NULL.
Tags (comma-separated)
Save Edits
Cancel