Spring MVC @SessionAttributes注解

@SessionAttributes原理

  默认情况下Spring MVC将模型中的数据存储到request域中。当一个请求结束后,数据就失效了。如果要跨页面使用。那么需要使用到session。而@SessionAttributes注解就可以使得模型中的数据存储一份到session域中。

 

@SessionAttributes参数

  1、names:这是一个字符串数组。里面应写需要存储到session中数据的名称。

  2、types:根据指定参数的类型,将模型中对应类型的参数存储到session中

    3、value:其实和names是一样的。

具体代码

Java代码

1 @RequestMapping("/test")
2 public String test(Map<String,Object> map){
3     map.put("names", Arrays.asList("caoyc","zhh","cjx"));
4     map.put("age", 18);
5     return "hello";
6 }

 

Jsp页面

 

1 1、request中names:${requestScope.names}<br/>
2 2、request中age:${requestScope.age}<br/>
3 <hr/>
4 3、session中names:${sessionScope.names }<br/>
5 4、session中age:${sessionScope.age }<br/>

 

 

显示结果:

 

【总结】:上面代码没有指定@SessionAttributes,所有在session域总无法获取到对应的数据。

 

下面我们加上@SessionAttributes注解

 1 @SessionAttributes(value={"names"},types={Integer.class})
 2 @Controller
 3 public class Test {
 4 
 5     @RequestMapping("/test")
 6     public String test(Map<String,Object> map){
 7         map.put("names", Arrays.asList("caoyc","zhh","cjx"));
 8         map.put("age", 18);
 9         return "hello";
10     }
11 }

 

再次访问页面:

可以看到session域中值已存在

 

【注意】:@SessionAttributes注解只能在类上使用,不能在方法上使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398140.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 关于MVC框架的简单实例(计算器)

一、需求分析 实现效果 二、实现步骤 步骤一&#xff1a;新建项目--->Web---->空模板 步骤二&#xff1a;添加控制器 步骤三&#xff1a;根据控制器名称添加视图 步骤四&#xff1a;添加Models模型 编写具体的方法 using System;using System.Collections.Generic;using…

JS函数

函数&#xff1a; 函数是由事件驱动或者当它被调用时执行的可重复色代码块。 <head> <script> function hanshu() { alert("你好&#xff01;"); } </script> </head><body> <button οnclick"hanshu()">点击</but…

the python interpreter is in_the python interpreter is in - 百度学术

152.6Khttp://www.web.mit.edu/18.417/OldFiles/doc/pydocs/ext.pdfweb.mit.edu全网免费224.9Khttp://www.logos.t.u-tokyo.ac.jp/~eddieh/Python-Docs-2.3.4/ext.pdflogos.t.u-tokyo.ac.jp全网免费224.9Khttp://www.logos.ic.i.u-tokyo.ac.jp/~eddieh/Python-Docs-2.3.4/ext.p…

windows下安装subversion

前言&#xff1a; 最近在写windows版本下svn hooks(钩子) post-commit的实现。所以会需要在windows下安装相应的subversion。经过一番查询后&#xff0c;决定使用VisualSVN Server和TortoiseSVN 来实现windows下subversion的安装。相应的安装包已放到相关的百度云盘&#xff0…

QMake Automatic Dependencies

qmake SUBDIRS Project Automatic DependenciesHere’s what I searched for, before figuring out how to get SUBDIRSdependencies working using qmake:“qmake export compiler flags”“qmake export defines”“qmake export includepath”“qmake build dependent proje…

apache安装配置

1.安装步骤&#xff1a; 解压源文件&#xff1a; 1 tar zvxf httpd-2.2.21.tar.gz 2 cd httpd-2.2.213 ./configure --prefix/usr/local/apache2 --enable-so --enable-rewrite 4 make5 make install 运行./configure 命令进行编译源代码&#xff0c; --prefix/usr/local/apach…

单片机机器周期怎么计算公式_单片机的机器周期计算

单片机的机器周期计算~2007-08-31 10:32 这么个最简单的问题&#xff0c;总是忘记&#xff0c;日了&#xff0c;现在干脆给记下来&#xff0c;以后再忘记的话就看一看好了。1、时钟周期时钟周期T又称为状态周期&#xff0c;是时序中最小的时间单位。具体计算就是1/fosc。也就是…

数据库---初识sql语句

初识sql语句 SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型&#xff1a; DDL语句 数据库定义语言&#xff1a; 数据库、表、视图、索引、存储过程&#xff0c;例如CREATE DROP ALTERDML语句 数据库操纵语言&a…

堆与二叉树(下)

接着上次的&#xff0c;这里主要介绍的是堆排序&#xff0c;二叉树的遍历&#xff0c;以及之前讲题时答应过的简单二叉树问题求解 堆排序 给一组数据&#xff0c;升序&#xff08;降序&#xff09;排列 思路 思考&#xff1a;如果排列升序&#xff0c;我们应该建什么堆&#x…

实战:ajax带参数请求slim API

restful api 支持get,post,put,delete等方法&#xff0c;那么jquery客户端怎么去实现呢?涉及到跨域又怎么办&#xff1f; 很多时候需要传递一个token(api_key) 去识别用户身份&#xff0c;获取访问接口的权限。这里的token 不放在 header中&#xff08;那个也能实现&#xff0…

关于自动布局更新约束方法的总结

1、layoutSubviews 在iOS5.1和之前的版本&#xff0c;此方法的缺省实现不会做任何事情(实现为空)&#xff0c;iOS5.1之后(iOS6开始)的版本&#xff0c;此方法的缺省实现是使用你设置在此view上面的constraints(Autolayout)去决定subviews的position和size。 UIView的子类如果需…

java new数组_Java如何使用new创建数组

java语言使用new操作符来创建数组&#xff0c;语法如下&#xff1a;arrayRefVar new dataType[arraySize];上面的语法语句做了两件事&#xff1a;一、使用dataType[arraySize]创建了一个数组。二、把新创建的数组的引用赋值给变量 arrayRefVar。数组变量的声明&#xff0c;和创…

sql 按时间二段排序

业务需用为数据按倒序排序&#xff0c;当天数据排在以往日期前面&#xff0c;但当天数据需按小时进行升序排列 select *from( select vcTitle,dtBeginDate,case when dtBeginDate<getdate() then 1 else 2 end tt from TableA ) a order by Convert(varchar(10),dtBeginDate…

java全局异常处理_详解Spring全局异常处理的三种方式

在J2EE项目的开发中&#xff0c;不管是对底层的数据库操作过程&#xff0c;还是业务层的处理过程&#xff0c;还是控制层的处理过程&#xff0c;都不可避免会遇到各种可预知的、不可预知的异常需要处理。每个过程都单独处理异常&#xff0c;系统的代码耦合度高&#xff0c;工作…

hibernate select语句返回的类型

2019独角兽企业重金招聘Python工程师标准>>> Person类中包含有MyEvent这个类 public class Person{private Long id;private String name;private MyEvent myEvent; } 一、HQL from语句 1、结果类型&#xff1a;List<Person> from Person 或者 from Person…

RDLC系列之五 初试XAML

本章只讲解xaml部分&#xff0c;其余都和winform下一样 1.xaml代码 <Window x:Class"RDLC.WPF.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:r…

thinkphp内置标签简单讲解

thinkphp内置标签简单讲解 1、volist循环 name 需要遍历的数据 id 类似于foreach中 value offset 截取数据起始位置 length 截取数据的个数 mod 奇偶数 empty 数据为空的使用 key 编号 2、foreach循环 name 需要遍历的数据 item 类似于foreach中的value key 类似于foreach中的k…

hashcode java_java 的Object类的hashcode()方法具体是怎么实现的?

轻松解说Object.hashcode()的实现&#xff0c;让你看着不累&#xff01;intptr_t ObjectSynchronizer::FastHashCode (Thread * Self, oop obj) {// 如果启用偏向锁if (UseBiasedLocking) {// NOTE: many places throughout the JVM do not expect a safepoint// to be taken h…

Android 数据库升级解决方案

转自&#xff1a;http://blog.csdn.net/leehong2005/article/details/9128501 请考虑如下情况&#xff1a; 在数据库升级时&#xff0c;不同版本的数据库&#xff0c;他们定义的表结构完全可能是不一样的&#xff0c;比如V1.0的表A有10个column&#xff0c;而在V1.1的表A有12个…

区间素数筛法

给定整数a和b&#xff0c;请问区间[a,b)内有多少个素数&#xff1f; a<b<10^12 b-a<10^6 因为b以内合数的最小质因数一定不超过sqrt(b),如果有sqrt(b)以内的素数表的话&#xff0c;就可以把筛选法用在[a,b)上了,先分别做好[2,sqrt(b))的表和[a,b)的表&#xff0c;然后…