避免在Spring中创建会话

时间:2015-07-06 10:52:05

标签: java spring security session controller

我有一个Spring Web应用程序,可以在每个请求上创建一个会话,我想避免这种情况。

我有这个配置:

<security:http pattern="/**" auto-config='true' create-session="never" use-expressions="true">
    <security:intercept-url pattern="/**" access="permitAll" />
</security:http>

<security:authentication-manager>
    <security:authentication-provider>
        <security:jdbc-user-service data-source-ref="dataSource"/>
    </security:authentication-provider>
</security:authentication-manager>

我打电话给控制器

@RequestMapping(method=RequestMethod.GET, value="/experiences", produces="application/json")
public String getExperiencesList(
        HttpServletRequest request,
        @RequestParam(value = "channel",required=true) String channel,
        @RequestParam(value = "page",required=true) int page,
        Model model) {  
    String path = "http://" + HOST + request.getContextPath();
    model.addAttribute("json", experienceService.getExperiencesList(page,channel,path));

    return "json";
}

这将通过移动应用程序使用,同一个应用程序可以打开无限会话,任何想法我怎么能避免这个?。

感谢。

1 个答案:

答案 0 :(得分:1)

好的,已经完成了,我重新构建了安全性并添加了一些更改。

在其他文件中添加了安全配置:

<http pattern="/**" security="none" create-session="never"/>

在web.xml中:

<http create-session="never"></http>

并添加了session =&#34; false&#34;在jsp页面上。

现在似乎工作正常。