在 mongodb 中保存该对象时获得相同的 java 对象
Get the same java object on saving that object in mongodb
我的 POJO 看起来像这样:
@Document(collection = "users")
public class User {
@Id
private String id;
String username;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
我可以通过调用 mongoDBClient.save(userObj);
将对象的值保存在 mongodb 中:
public void save(Object paramObject) {
mongoOperations.save(paramObject);
}
此 save
api 的问题在于它正在返回 void
。我想获得已保存的相同对象。我怎样才能做到这一点?
paramObject
可在保存后进行自省。它代表了它在那个阶段的持久状态。
例如driver负责代为分配id
此外,您未自行设置并指定由 spring 数据填充的所有属性 - 例如用 @CreatedDate
注释的属性 - 在 [=13] 之后也可用=] 方法(假设配置了审计)。
无论如何,Id 已设置。稍后您可以通过调用 findById(paramObject.getId(), User.class)
来查询相同的 object
我的 POJO 看起来像这样:
@Document(collection = "users")
public class User {
@Id
private String id;
String username;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
我可以通过调用 mongoDBClient.save(userObj);
将对象的值保存在 mongodb 中:
public void save(Object paramObject) {
mongoOperations.save(paramObject);
}
此 save
api 的问题在于它正在返回 void
。我想获得已保存的相同对象。我怎样才能做到这一点?
paramObject
可在保存后进行自省。它代表了它在那个阶段的持久状态。
例如driver负责代为分配id
此外,您未自行设置并指定由 spring 数据填充的所有属性 - 例如用 @CreatedDate
注释的属性 - 在 [=13] 之后也可用=] 方法(假设配置了审计)。
无论如何,Id 已设置。稍后您可以通过调用 findById(paramObject.getId(), User.class)