【发布时间】:2017-05-15 00:24:36
【问题描述】:
我对 Spring Boot 中的 @RequestMapping 有疑问。
我想做login() 方法,其中取决于用户角色,他将被重定向到不同的路径。
例如,我有 3 个用户角色:
- 管理员
- 学生
- 老师
在 thymeleaf 中,我使用 th:action 形式,例如:
<form th:action="@{/login}" th:object="${userR}" method="post">
我制作方法:
@RequestMapping(value = "/login", method=RequestMethod.POST)
public String login(Model model, @ModelAttribute("userR") User user) {
对于这 3 个角色,我总是登录到地址/登录,但我想登录
- 地址/管理员
- 地址/学生
- 地址/老师
如何为每个角色设置此 url 路径?
例如,只需让 if 和“返回地址/学生”将我重定向到正确的页面,但 url 仍然是“地址/登录”。
每个角色都会不同@Controller。
【问题讨论】:
-
为什么每个角色都需要不同的控制器?你可以只检查一个控制器中的角色吗?
-
是的,我可以做到,但我需要为 3 种不同类型的用户使用不同的控制器。哪个角色当前有登录用户我将在这个方法“login()”中检查它
标签: spring spring-mvc thymeleaf request-mapping