Spring-在没有MVC的会话中存储对象

时间:2019-03-13 09:27:47

标签: spring spring-boot

我有一个干净的javascript + html + css前端项目,该项目将POST请求发送到后端端点。

后端是一个SpringBoot应用程序。

我需要将购物车存储到服务器的会话中,而不是浏览器的会话中。以前该项目是Spring MVC + Thymeleaf应用程序,但我将其重写为JS + Spring。

在先前的应用程序版本中,通过@ModelAttribute和@SessionAttribute批注处理,但是所有类和配置的简单“复制粘贴”都无法解决问题。

示例控制器:

@Controller
@SessionAttributes("basket")
public class LabelDesignController implements IPageModel {

    @ModelAttribute("basket")
    public Basket populateBasketForm() {
        logger.info("[Model Attribute] populating [Basket] form.");
        return new Basket();
    }

    @PostMapping(value = "/myEndPoint", produces = MediaType.APPLICATION_JSON_VALUE)
    @ResponseBody
    public Object myEndPoint(@ModelAttribute("basket") Basket b, Item newItem) {
        // some logic here
    }
}

Item是一个POJO类。

编辑: 忘了提一下,前端是带有普通JavaScript(甚至没有jQuery)的静态HTML页面。它们正在Nginx服务器上运行。后端在mvn spring-boot:run命令上运行。

0 个答案:

没有答案