mongo使用自增id

定义自增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

    原文作者:codecraft
    原文地址: https://segmentfault.com/a/1190000007529139
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞