如何在Spring MVC的会话中保存字符串?

Rae*_*vik 3 ajax model-view-controller session jquery spring

我是Spring MVC的新手,我正在试图找出合适的方法来做一些我认为非常简单的事情.

我有一个简单的jQuery AJAX调用:

    var dataString = 'existingProject='+ $("#existingProject").val() + '&newProjName=' +      $("#newProjName").val();

    $.ajax({  
        type: "POST",  
        url: "manageProjects.html",  
        data: dataString            
    });
Run Code Online (Sandbox Code Playgroud)

我想为用户的会话设置此用户设置"项目".这个AJAX调用来自JS文件中的javascript并连接到我的Spring MVC控制器.

Controller正在获取这些变量,但我不知道如何处理它以使这些数据传入会话特定.

我已经搜索了这个主题,并遇到了6个不同的选项(使用自动装配注入会话范围的bean,使用xml配置和cgl-nodep库的bean,HttpServlet属性,@ ModelAttribute,@ SessionAttribute等等).我尝试使用Session scoped bean并定义以下内容:

@Component
@Scope("session")
public class UserSettings
Run Code Online (Sandbox Code Playgroud)

......但豆子并未被锁定在会议中.我在我的控制器中使用了@Autowire,发现它在会话之间仍然是相同的实例,所以我清楚地搞砸了.

我只是想保存一个怪异的字符串!必须有一个101级简单的方法来做到这一点......

fmu*_*car 10

@RequestMapping(value = "/request/mapping")
public ModelAndView methodName(HttpSession session,...){

session.setAttribute("testVariable", "Test Values!!");
}
Run Code Online (Sandbox Code Playgroud)

要么

@RequestMapping("/test")
@Controller
public class TestController {
    @RequestMapping(method = RequestMethod.GET)
    public String testMestod(HttpServletRequest request)
    {
        request.getSession().setAttribute("testVariable", "Test Values!!");
        return "testJsp";
    }
}
Run Code Online (Sandbox Code Playgroud)