如何在 spring 应用程序中将对象添加到会话

How to add object to session in spring app

我在 Spring 有一家网店。我想为访问该站点并将其存储在会话中的每个新用户创建一个购物车。如何才能做到这一点?只是我从未在 Spring 中使用过会话。也许有一个很好的资源来研究这些东西。

使您的控制器会话具有作用域

@Controller
@Scope("session")

然后向会话添加一个属性

@RequestMapping(method = RequestMethod.GET)
public String testMestod(HttpServletRequest request){
   ShoppingCart cart = (ShoppingCart)request.getSession().setAttribute("cart",valueOfCart);
   return "testJsp";
}

然后每次都应该在会话中的用户对象范围:

@Component
@Scope("session")
public class User
 {
    String user;
    /*getter setter*/
  }

然后在您想要的每个控制器中注入 class

@Autowired
   private User user

AOP代理注入:在spring-xml:

 <bean id="user"    class="com.User" scope="session">     
      <aop:scoped-proxy/>
  </bean>

参考:How to use Session attributes in Spring-mvc

@控制器 class 示例{

@RequestMapping("/") public 字符串测试(HttpSession 会话){

session.addAttribute("购物车",新购物车()); }

}