@PostMapping("/regix") @ResponseBody public String regix(User u,@RequestParam("_roles")String[] roles){ u.setPassword(encoder.encode(u.getPassword())); if (userService.findUserById(u.getUserId())!=null){ return "failure"; } userService.addUser(u); for(int i=0;i<roles.length;i++){ Role role=roleService.findByRoleName(roles[i]); UserRole ur=new UserRole(); ur.setRoleId(role.getRoleId()); ur.setUserId(u.getUserId()); userRoleService.addUserRole(ur); } return "index"; }问什么index跳转不了
时间: 2024-02-05 21:03:23 浏览: 121
@Response和@Request
根据你提供的代码,我们可以看到在注册成功后,返回的是字符串 "index",而不是跳转到 index 页面。这可能是因为没有在代码中进行页面跳转的操作。你可以在该方法中添加一个返回 ModelAndView 的语句,使用 ModelAndView.setViewName() 方法将视图名称设置为 "index",并返回该 ModelAndView 对象。例如:
```
@PostMapping("/regix")
@ResponseBody
public ModelAndView regix(User u, @RequestParam("_roles") String[] roles) {
u.setPassword(encoder.encode(u.getPassword()));
if (userService.findUserById(u.getUserId()) != null) {
return new ModelAndView("failure");
}
userService.addUser(u);
for (int i = 0; i < roles.length; i++) {
Role role = roleService.findByRoleName(roles[i]);
UserRole ur = new UserRole();
ur.setRoleId(role.getRoleId());
ur.setUserId(u.getUserId());
userRoleService.addUserRole(ur);
}
ModelAndView mav = new ModelAndView();
mav.setViewName("index");
return mav;
}
```
这样就可以在注册成功后跳转到 index 页面了。
阅读全文