Мой account.java - это
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@Document(collection="Account")
public class Account {
@Id
private String id;
private String username;
private String password;
private String role;
}
Мой репозиторий для этого
import org.springframework.data.mongodb.repository.MongoRepository;
public interface AccountRepository extends MongoRepository<Account, Integer> {
}
Наконец-то. Для моего контроллера (еще не выполнено)
@PutMapping("/createAccount")
public void createAccount(@RequestBody Account account) {
}
Я хочу следующее:
Если бы я отправил json в теле запроса, например
{
"username": "Tom",
"password": "123456",
"role": "Employee"
}
Затем он создаст объект в коллекции Account с этим свойством, что легко сделать через repository.insert (account). Однако мне нужно проверить определенные фильтры
- Необходимо установить все 3 объекта
- роль должна быть либо «Сотрудник», «Администратор», либо «Клиент»
- Наконец, пользователь еще не в базе данных
В противном случае отправляет ответ 400
Как мне добиться этого с помощью Springboot?