Couchbase SDK でuser::524525などのプレフィックス付きの一意の ID を生成する方法を知りたいです。
Couchbase JavaSDK ガイド を使用して Couchbase を使い始めたとき、すべての例で id が TYPE::ID のように見えることに気付きました (例: user::king_arthur)。これは、異なるドキュメントの ID の競合を避けるためにも推奨されます。Spring Data Couchbaseのドキュメントを読んでいたので、その方法は次のようになると思いました
import org.springframework.data.couchbase.core.mapping.id.GeneratedValue;
import org.springframework.data.couchbase.core.mapping.id.GenerationStrategy;
import org.springframework.data.couchbase.core.mapping.id.IdPrefix;
import com.couchbase.client.java.repository.annotation.Id;
...
@Data
public class User {
@IdPrefix
private String prefix = "user";
@Id @GeneratedValue(delimiter = "::", strategy = GenerationStrategy.USE_ATTRIBUTES)
private String id;
}
しかし、これをテストしてデータベースにチェックインすると、IDは単に「ユーザー」です。
何か不足していますか?バグですか?提案をいただければ幸いです。