【发布时间】:2021-10-24 18:35:10
【问题描述】:
我正在尝试构建一些自定义查询,例如 documentation 所说的,但它不起作用。
我陷入了我认为的块方法,没有检索到任何数据。
这是我的回购类:
@Repository
public interface UserRepository extends FirestoreReactiveRepository<User> {
Flux<User> findByCPF(String CPF);
Flux<User> findByEmail(String email);
}
这是模型:
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Document(collectionName = "userCollection")
public class User extends BaseEntity {
@NotNull(message = "{validation.notnull.user.name}")
private String name;
@Email
@NotNull(message = "{validation.notnull.user.email}")
private String email;
@NotNull(message = "{validation.notnull.user.password}")
private String password;
@NotNull(message = "{validation.notnull.user.address}")
private String address;
@CPF
@NotNull(message = "{validation.notnull.user.cpf}")
private String CPF;
@NotNull(message = "{validation.notnull.user.birthDate}")
private Date birthDate;
@NotNull(message = "{validation.notnull.user.role}")
private UserRoleEnum role;
}
这是我正在构建的方法,但我被卡住了:
@Override
public Mono<User> create(User entity) {
var cpf = userRepository.findByCPF(entity.getCPF());
var email = userRepository.findByEmail(entity.getEmail());
if(cpf == null || email == null)
throw new EntityExistException();
else
return super.create(entity);
}
是的,这是一个覆盖,因为我有一个通用服务类:
public class GenericService<T>{
private FirestoreReactiveRepository<T> firestoreReactiveRepository;
public GenericService(FirestoreReactiveRepository<T> firestoreReactiveRepository){
this.firestoreReactiveRepository = firestoreReactiveRepository;
}
@Transactional
public Mono<T> create(T entity){
return firestoreReactiveRepository.save(entity);
}
**** HIDED CONTENT *****
您知道如何使用此 FirestoreReactiveRepository 构建自定义查询吗?
【问题讨论】:
-
您能否发布扩展您的
GenericService<User>的完整子类?还有任何错误堆栈跟踪?
标签: java spring spring-boot google-cloud-firestore spring-repositories