mvc html类的作用域,SpringMVC使用session保存数据以及applicationContext作用域

这篇博客详细介绍了在 Spring MVC 中如何使用 HttpSession 来保存数据,包括在 Controller 中设置和获取 session 值,以及如何通过 @SessionAttributes 注解进行管理。还展示了如何在 logout 操作中清除 session,并探讨了不同作用域的概念。示例代码和测试结果有助于理解实践过程。

使用session保存数据(session是一次会话,里面可以有多次请求)

1、HttpSession session

1.1、index.jsp

Hello World!

1.2、success.jsp

Created by IntelliJ IDEA.

User: Mr Wei

Date: 2020/10/27

Time: 9:18

To change this template use File | Settings | File Templates.

--%>

成功页面

测试成功!

model

username:${uname}

session

sessionname:${sessionname}

out

1.3、测试类

@Controller

public class TestModelController {

@RequestMapping("/test")

public String test(String username, String password, ModelMap modelMap, HttpSession session,HttpServletRequest request){

System.out.println(username+" "+password);

modelMap.addAttribute("uname",username);

session.setAttribute("sessionname",username);

return "success";

}

@RequestMapping("/logout")

public String logout(HttpSession session){

session.invalidate();//让session失效

return "index";

}

}

测试结果

31400706a0cf

图片.png

31400706a0cf

图片.png

注:只有点out,session才会在这次会话中失效

2、使用@sessionAttributes("key值") //写的是ModelMap中定义的key值

注:该注解和ModelMap结合使用,当使用ModelMap存值时,会在session中同时存储一份数据

@SessionAttributes()的小括号中如果是一个值,不要加{}

示例:

@SessionAttributes("key")

@SessionAttributes({"key1","key2"})

清除注解SessionStatus status类

status.setComplete();

2.1、index.jsp

Hello World!

2.2、success.jsp

Created by IntelliJ IDEA.

User: Mr Wei

Date: 2020/10/27

Time: 9:18

To change this template use File | Settings | File Templates.

--%>

成功页面

测试成功!

model

username:${uname}

SessionAttributes

SessionAttributesName:${uname}

out

3.2、测试类

@Controller

@SessionAttributes("uname")

public class TestModelController {

@RequestMapping("/test")

public String test(String username, String password, ModelMap modelmap){

System.out.println(username+" "+password);

modelmap.addAttribute("uname",username);

return "success";

}

@RequestMapping("/logout")

public String logout(SessionStatus status){

status.setComplete();//清除session

return "index";

}

}

测试结果

31400706a0cf

图片.png

3、applicationContext作用域

31400706a0cf

图片.png

31400706a0cf

图片.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值