我尝试使处理程序和路由器类的Spring引导webflow。模型类是用户类。代码是
@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;
}
下面是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();
}
}
我想提取的用户名或id字符串从Mono的Spring webflow.将需要任何评论。我被这部分卡住了。
一个更干净的方法是(我不喜欢别人在map中返回null)使用doOn成功
:
request.bodyToMono(User.class)
.doOnSuccess(user -> return userRepository.insert(user))
.map(user -> ServerResponse.ok(user))
我遗漏了任何错误检查,但ofc应该正确进行。
这里的一个错误是这样的stringid=monoUser。地图(u)-
还有一件事,您不应该在函数体中使用请求的数据,而应该在map或flatMap函数中使用。
你可以用这样的东西来代替它(我是按头来做的,所以它可能不是100%语法corect):
Mono<User> userMono = request.bodyToMono(User.class);//Create a Mono<User>
userMono.map((user) -> { //In the map method, we access to the User object directly
if(user != null && user.getId() != null){
return userRepository.insert(user); // Insert User instead of Mono<User> in your repository
}
return null;
}) //This is still a Mono<User>
.map(insertedUser -> ServerResponse.ok(insertedUser)) //This is a Mono<ServerResponse>
.switchIfEmpty(ServerResponse.ok());
希望这有帮助!
我有一个接受Mono作为参数的方法。我只想从中得到实际的字符串。Googled但是除了调用Mono对象上的block(),没有找到答案,但是它会进行阻塞调用,所以要避免使用block()。如果可能的话,请建议其他方法。我之所以需要这个字符串,是因为在这个方法中,我需要用实际的字符串值调用另一个方法,比如print()。我明白这很容易,但我是反应性编程的新手。 代码:
我一直在使用Tweepy通过流媒体API收集某个地区的推文,我只收集了一条推文的纬度/经度,但我想添加更多,我不确定具体是什么。我使用这段代码来获取lat/long值: 我想把具体的用户名(@handle)和Tweet创建的时间打印到文本文件中。我不确定是否应该在< code > if decoded . get(' coordinates ',None)not None:循环中这样做。
问题内容: 我的Android应用程序中有一个Facebook登录选项,但尝试获取用户的电子邮件失败。在用户登录并添加到Parse.com用户表(具有有效的访问令牌)之后,我请求Facebook用户信息,但仅获取其ID和名称(即使电子邮件已设置为权限之一) )。 这是我的代码(在我的按钮的OnClickListener内部): 问题答案: 我想这与Graph API v2.4中的更改有关,该更改使
问题内容: 如何从用户进行pygame打印输入: 我试图让用户键入一些内容,然后pygame将其打印在屏幕上。 这是我当前的程序: 我想要这样,当用户点击Enter时,它将清空屏幕。 帮我! 问题答案: 这是一个示例脚本,可将输入切换到屏幕。它显示了如何在遍历pygame事件队列时修改字符串。每帧都将清除屏幕,并重建名称表面并使其变白。 这是要点版本
所以我要做的是让我的Java找到windows用来登录的用户名,所以当我说这样的方法时,它会返回用户名,就像我在名为Noah的用户中使用它一样,Java会返回“Noah”,如果我在用户Amanda上,Java会返回“Amanda”。我该怎么做?
我一直在寻找一种使用spring ldapTemplate通过LDAP验证用户名的方法。 我的搜索结果是 但我想知道我需要在contextMapper或attributeMapper中添加什么。据我所知,它用于将数据映射到对象。但我不需要这个东西。我只想知道布尔值是否存在。 我的属性示例: 我的模板包含url、用户名和密码,连接已经建立。 我需要一些帮助,因为我不确定使用搜索方法是否正确。 我已使