Spring mvc Spring MVC重复请求忽略服务层中的检查
我在我的项目中使用spring boot mvc,我面临一个奇怪的问题 我的服务层中有这个方法Spring mvc Spring MVC重复请求忽略服务层中的检查,spring-mvc,spring-boot,Spring Mvc,Spring Boot,我在我的项目中使用spring boot mvc,我面临一个奇怪的问题 我的服务层中有这个方法 @Autowired UserRepository userRepository; public void registerUser(User user) { User existingUser = userRepository.findByUsername(user.getUsername()); if (existingUser != null) { thro
@Autowired
UserRepository userRepository;
public void registerUser(User user) {
User existingUser = userRepository.findByUsername(user.getUsername());
if (existingUser != null) {
throw new UserException("Sorry! This username is already taken");
}
// other validations
userRepository.save(user);
}
令人惊讶的是,数据库中存在具有相同用户名的条目。当前端对同一表单内容发出多个请求时,就会发生这种情况
我有两个问题:
1.除了要求前端在单击后禁用submit按钮之外,我是否可以在后端(Java)停止此操作
您应该为用户名定义唯一约束,也可以在单击“提交”按钮后禁用该按钮。同意。但是,在使用spring mvc时,有没有一种方法可以处理并发请求?让你的方法Syncronous可以做到这一点,但它会让你的应用程序慢一点。但是,这是解决问题的一种方法,也许可以尝试一下