我尝试制作 spring boot webflux 的处理程序和路由器类。模型类是用户类。代码是
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@Document(collection="Users")
public class User {
@Id
private String _id;
@Indexed(unique = true)
private Long id;
@Indexed(unique=true)
private String username;
private String password;
private String email;
private String fullname;
private String role;
}
Run Code Online (Sandbox Code Playgroud)
下面是 webflux 项目的处理程序类。在register方法中,我制作了id重复测试代码。但这是完全错误的。
@Component
public class UserHandler {
@Autowired
private UserReactiveMongoRepository userRepository;
public Mono<ServerResponse> register(ServerRequest request) {
Mono<User> monoUser = request.bodyToMono(User.class);
String id = monoUser.map(u -> u.get_id()).toString();
if(userRepository.existsById(id) == null)
return ServerResponse.ok().build(userRepository.insert(monoUser));
return ServerResponse.ok().build();
}
}
Run Code Online (Sandbox Code Playgroud)
我想从 spring webflux …