定义自增collection
@Document
public class MongoSequence {
@Id
private String id;
private int seq;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public int getSeq() {
return seq;
}
public void setSeq(int seq) {
this.seq = seq;
}
}
获取自增id
@Autowired
MongoTemplate mongo;
public int getNextSequence(String collectionName) {
MongoSequence seq = mongo.findAndModify(
query(where("_id").is(collectionName)),
new Update().inc("seq", 1),
options().upsert(true).returnNew(true),
MongoSequence.class);
return seq.getSeq();
}
doc