1

春のデータ カウチベース リファレンス ガイドで述べたように、@Version アノテーションを使用して楽観的ロック機能を有効にしようとしています。私の期待は、ドキュメントが変更されたときにバージョンフィールドに値が入力されることです。しかし、バージョン フィールドにデータが入力されていないようです。常に 0 です。以下は私の Pojo で、crudRepository を使用してドキュメントを保存します。更新時にバージョンを 1 として送信して、楽観的ロック例外をシミュレートしようとします。しかし、例外は発生せず、更新はうまくいきました。ドキュメントはあまり役に立たないので、先に進むことができませんでした。どんな助けでも大歓迎ですか?

@Document
public class Project extends BusinessEntity {

    private static final long serialVersionUID = 1665165729053936288L;

    @NotNull
    @Field
    private String name;

    @Field
    private String description;

    @Version
    private long version;


    public Project() {

    }

    public Project(String name) {
        this.name = name;
    }

    public Project(String name, String description) {
        super();
        this.name = name;
        this.description = description;
    }

    /**
     * @return the name
     */
    public String getName() {
        return name;
    }

    /**
     * @param name the name to set
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * @return the description
     */
    public String getDescription() {
        return description;
    }

    /**
     * @param description the description to set
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * @return the version
     */
    public long getVersion() {
        return version;
    }

    /**
     * @param version the version to set
     */
    public void setVersion(long version) {
        this.version = version;
    }



}
4

2 に答える 2