package com.test.controller;
import com.test.pojo.Address;
import com.test.pojo.Users;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.SessionAttributes;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Controller
@RequestMapping("/users")
//指定放入model中的某个变量 存入session中
@SessionAttributes(value="sessionUser2")
public class UsersController {
//存入session方式1:原生session
@RequestMapping("/getUser6")
public String getUser6(HttpServletRequest request)
{
Users user=new Users(6,"daimenglaoshi6","888",new Address(1,"shanghai"),new Date(),888888);
HttpSession session= request.getSession();
session.setAttribute("sessionUser",user);
return "showSessionUser";
}
//存入session方式2:用注解的方式 @SessionAttributes(value="sessionUser2")
@RequestMapping("/getUser7")
public ModelAndView getUser7() {
ModelAndView modelAndView=new ModelAndView();
Users user=new Users(7,"daimenglaoshi7","888",new Address(1,"shanghai"),new Date(),888888);
modelAndView.addObject("sessionUser2",user);
modelAndView.setViewName("showSessionUser2");
return modelAndView;
}
@RequestMapping("/destroySession")
public String destroySession(HttpServletRequest request){
HttpSession session= request.getSession();
//销毁session
session.invalidate();
return "showDestroySession";
}
}
<%--
Created by IntelliJ IDEA.
User: HIAPAD
Date: 2019/12/5
Time: 19:37
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Titletitle>
head>
<body>
${sessionScope.sessionUser.uname}<br/>
${sessionScope.sessionUser2.uname}<br/>
body>
html>
<%--
Created by IntelliJ IDEA.
User: HIAPAD
Date: 2019/12/5
Time: 19:08
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Titletitle>
head>
<body>
${sessionUser.uname}
body>
html>
<%--
Created by IntelliJ IDEA.
User: HIAPAD
Date: 2019/12/5
Time: 19:08
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Titletitle>
head>
<body>
${sessionScope.sessionUser2.uname}
body>
html>
推荐使用原生方式,因为经过测试,销毁方法只能销毁原生方式创建的session