Spring Boot thymeleaf显示特定的用户配置文件

pbpqsu0x  于 2023-03-29  发布在  Spring
关注(0)|答案(2)|浏览(97)

我是新的thymeleaf和Spring Boot 所以我真的不知道我在寻找什么来解决我的问题。我有几个用户显示在我的网站上的列表。当我点击其中一个用户,我想显示用户的个人资料页面。
列表如下所示:

<ul>
    <li th:each="section : ${sections}">
        <a href="overviewDivision.html?id=1" th:href="@{/overviewDivision?id=1}">
            <span th:text="${section.name}">Bereich3</span>
        </a>
        <ul>
            <li th:each="person : ${personSectionService.getPersonsBySectionId(section.id)}">
                <a href="overviewEmployee.html?id= + person.id" th:href="@{/overviewEmployee?id= + person.id}">
                    <span th:text="${person.firstName + ' ' + person.lastName}">
                    </span>
               </a>
           </li>
       </ul>
   </li>
</ul>

这是我的控制器:

@RequestMapping(value = "/overviewEmployee", method = RequestMethod.GET)
public String overviewEmployee(Model model) {
    model.addAttribute("sections", sectionService.getAllSections());
    model.addAttribute("personSectionService", personSectionService);
    model.addAttribute("currentPerson", personService.getById(1));
    return "overviewEmployee";
}

在个人资料页面上,我使用currentPerson.firstName等来获取用户的信息。所以我的问题是,我如何将currentPerson更改为列表中最后一个点击的人?或者我做得完全错误?

0tdrvxhp

0tdrvxhp1#

你需要有两个处理器:一个用于显示列表,另一个用于获取详细信息。前者不应在模型中设置currentPerson,因为您还没有此信息。
您的处理程序应如下所示:

@RequestMapping(value = "/employees", method = RequestMethod.GET)
public String overviewEmployee(Model model) {
    model.addAttribute("sections", sectionService.getAllSections());
    model.addAttribute("personSectionService", personSectionService);
    return "employee-list";
}

@RequestMapping(value = "/overviewEmployee", method = RequestMethod.GET)
public String overviewEmployee(Model model, @RequestParameter long id) {
    model.addAttribute("currentPerson", personService.getById(id));
    return "overviewEmployee";
}

(注意@RequestParameter的使用)
我假设您的idlong,并且它是强制性的。

kb5ga3dv

kb5ga3dv2#

:已解决[org.springframework.web.bind.MissingServletRequestParameterException:方法参数类型String所需的请求参数'jobId'不存在]

相关问题