如何在百里香的会话中设置属性?

时间:2018-11-30 02:29:46

标签: spring http session thymeleaf

我正在尝试使用百里香叶向HTTP会话添加属性,但是我不能。我有一个“项目”对象,需要将其传递给控制器​​。我在页面中有一个表单,所以我已经尝试过了,但是不起作用:

<input type="hidden" th:attr="${#session.setAttribute('proyecto', '${proyecto}')}"

控制器收到属性proyecto,但值为"${proyecto}",而不是项目对象的内容

1 个答案:

答案 0 :(得分:0)

使用表单发送值,然后在控制器中设置会话属性。

HTML

<form th:action="@{/newProject}" th:object="${newProject}" method="post">
    <input th:field="*{id}"></input>
</form>

控制器

@RequestMapping(value = "/newProject", method = RequestMethod.POST)
public String addProject(HttpSession session, @ModelAttribute("newProject") Project project) {
    session.setAttribute("proyecto", project);
    return "/newPage";
}

这仅是示例。您将需要在HTML中添加所有项目字段。