【问题标题】:How to add object to session in spring app如何在春季应用程序中将对象添加到会话
【发布时间】:2021-01-14 12:30:30
【问题描述】:

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

【问题讨论】:

    标签: spring session


    【解决方案1】:

    @控制器 类示例{

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

    session.addAttribute("cart",new Cart()); }

    }

    【讨论】:

    • 我现在如何将商品添加到此购物车。那些。如何在另一个控制器中获取此购物车。然后我怎样才能完全清空这个篮子?
    【解决方案2】:

    使您的控制器会话范围

    @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*/
      }
    

    然后在你想要的每个控制器中注入类

    @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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-04
      • 2015-09-27
      • 1970-01-01
      • 2011-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多