Я переношу API с Nodejs на Java.
Я использую Micronaut 2.0.0.RC1 вместе с micronaut-mon go -syn c
У меня все в порядке, но мне не хватает важной функции, которая есть у меня с mon goose, которая устанавливает схемы и уникальные ключи.
Что-то вроде этого:
const schema = mongoose.Schema(
{
username: {
type: String,
required: true,
unique: true
},
name: {
type: String,
required: true,
},
lastName: {
type: String,
required: true,
},
password: {
type: String,
required: true
},
role: {
type: String,
default: "ADMIN",
required: true,
enum: ["ADMIN", "ROOT"],
},
isVerified: {
type: Boolean,
default: false,
required: true,
},
isBlocked: {
type: Boolean,
default: false,
required: true,
},
},
{ timestamps: true }
);```
Сейчас в Java У меня есть следующее:
@NoArgsConstructor
@AllArgsConstructor
@Data
@Builder
public class User {
public static final String DEFAULT_ROLE = "ADMIN";
@BsonProperty("_id")
private ObjectId _id;
private String username;
private String password;
private String name;
private String lastName;
@Builder.Default private Boolean isVerified = false;
@Builder.Default private Boolean isBlocked = true;
@Builder.Default private String role = DEFAULT_ROLE;
private String token;
}
Я не понимаю, как это сделать с клиентом MongoDB в Java. Мой вопрос нацелен на отсутствие уникальных полей, я бы не хотел искать, чтобы увидеть, есть ли что-то уже в БД>
Кто-нибудь знает, возможно ли это?
Спасибо.