首页 > 其他分享 >springMVC域对象共享数据

springMVC域对象共享数据

时间:2024-06-21 10:42:48浏览次数:26  
标签:springMVC request 对象 session ModelAndView 共享 数据 Model

目录

五、域对象共享数据

5.1、使用ServletAPI向request域对象共享数据

<a th:href="@{testServletAPI}">测试通过ServletAPI向请求域共享数据</a>
@RequestMapping("/testServletAPI")  public String testServletAPI(HttpServletRequest request){   request.setAttribute("testScope","hello,servletAPI");   return "success"; }
<p th:text="${testScope}"></p>

5.2、使用ModelAndView向request域对象共享数据

<a th:href="@{/testmav}">测试通过ModelAndView向请求域共享数据</a>
@RequestMapping("/testmav")
public ModelAndView testmav(){
    /**
     * ModelAndView包含Model和View的功能
     * Model:向请求域中共享数据
     * View:设置逻辑视图实现页面跳转
     */
    ModelAndView modelAndView = new ModelAndView();
    //向请求域中共享数据
    modelAndView.addObject("testReqeustScope","hello,ModelAndView");
    //设置逻辑视图
    modelAndView.setViewName("success");
    //使用View设置逻辑视图,但是控制器方法一定要将ModelAndView的对象作为方法的返回值
    return modelAndView;
}

<p th:text="${testReqeustScope}"></p>

5.3、使用Model向request域对象共享数据

<a th:href="@{/testmodel}">测试通过Model向请求域共享数据</a><br>
@RequestMapping("/testmodel")
public String testmodel(Model model){
    //org.springframework.validation.support.BindingAwareModelMap
    System.out.println(model.getClass().getName());
    model.addAttribute("testReqeustScope","hello,Model");
    return "success";
}

5.4、使用map向request域对象共享数据

@RequestMapping("/testMap")
public String testMap(Map<String,Object> map){
    //org.springframework.validation.support.BindingAwareModelMap
    System.out.println(map.getClass().getName());
    map.put("testReqeustScope","hello,map");
    return "success";
}

5.5、使用ModelMap向request域对象共享数据

@RequestMapping("/testmodelmap")
public String testModelMap(ModelMap modelMap){
    //org.springframework.validation.support.BindingAwareModelMap
    System.out.println(modelMap.getClass().getName());
    modelMap.addAttribute("testReqeustScope","hello,ModelMap");
    return "success";
}

5.6 Model、ModelMap、Map的关系

Model、ModelMap、Map类型的参数本质上其实都是BindingAwareModelMap类型的

org.springframework.validation.support.BindingAwareModelMap

所以在底层中,这些类型的形参最终都是通过BindingAwareModelMap创建的

5.7、向session域共享数据

<a th:href="@{/testsession}">测试通过session向回话域共享数据</a><br>
@RequestMapping("/testsession")
public String testSession(HttpSession session){
    session.setAttribute("testSessionScope","hello,session");
    return "success";
}
<p th:text="${session.testSessionScope}"></p>

5.8、向application域共享数据

@RequestMapping("/testapplication")
public String testApplication(HttpSession session){
    ServletContext servletContext = session.getServletContext();
    servletContext.setAttribute("testApplicationScope","hello,Application");
    return "success";
}
*<!--**通过**${application.**属性名**}**获取的是**application**域对象数据**--> *  <p th:text="${application.testApplicationScope}"></p>

标签:springMVC,request,对象,session,ModelAndView,共享,数据,Model
From: https://www.cnblogs.com/ning23/p/18260086

相关文章

  • 调用了这么久的JS方法是长在对象、类、值本身还是原型链上?
    调用了这么久的JS方法是长在对象、类、值本身还是原型链上?JavaScript这门语言总是能带给我惊喜,在敲代码的时候习以为常的写法,退一步再看看发现自己其实对很多基操只有表面的使用,而从来没思考过为何要这样操作。今天整理JS代码的时候突然发出灵魂三连问:为什么有些时候操作对象,......
  • ssm springmvc springboot区别
    pom.xml文件里看ssm<dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web......
  • Python基础-类与对象
    1.面向对象的三大特性封装继承多态2.类与对象的理解与封装特性类是事物抽象的集合,对象是事物具象的个体。(类–>实例化–>对象)面向对象编程语言类:一个模板,(人类)—是一个抽象的,没有实体的对象:(eg:张三,李四)属性:(表示这类东西的特征,眼睛,嘴巴,鼻子)方法:(......
  • 深入探索WebKit中的跨域资源共享(CORS)实现
    跨域资源共享(CORS)是一个安全协议,允许不同源之间的资源共享。在现代Web应用中,CORS对于实现WebAPI调用、Ajax跨域请求等至关重要。WebKit作为广泛使用的浏览器引擎之一,其对CORS的支持直接影响到Web应用的跨域交互能力。本文将深入探讨WebKit如何实现CORS,以及这一机制对开发者......
  • Java学习 (四) 面向对象--类与方法
    关于面向对象的知识点1、java类以及类成员      属性      方法      构造器      代码块      内部类2、面向对象特征      封装      继承      多态3、 其他关键字使用    this\super\p......
  • 【C++】类和对象(三)构造与析构
    文章目录一、类的6个默认成员函数二、构造函数干嘛的?语法定义特性综上总结什么是默认构造函数?三、析构函数干嘛的?语法定义析构顺序一、类的6个默认成员函数如果一个类中什么成员都没有,简称为空类。空类中并不是真的什么都没有。任何类在什么都不写时,编译器会自......
  • 视频共享融合赋能平台LntonCVS视频监控业务平台建设安全煤矿矿井应用方案
    随着我国经济的飞速增长,煤炭作为主要的能源之一,在我国的能源结构中扮演着至关重要的角色。然而,煤矿事故的频繁发生,不仅造成了巨大的人员伤亡和财产损失,也对社会产生了深远的负面影响。因此,实现煤矿的智能化无人开采及安全生产,视频监控系统成为了关键所在。视频监控方案能够实......
  • JAVA面向对象三大特征————封装
    封装是面向对象的三大特征之一。面向对象的三大特征:封装、继承、多态类=属性+方法,类是对属性和方法的封装。类封装了类的成员。如果在类的外部可以随意访问类的成员,那将属性和方法放到类中就没有意义了。因此Java允许在类中通过访问修饰符控制类成员的访问权限privat......
  • 面向对象————继承
    继承是面向对象的基本特征之一。继承的概念使用继承可以为一系列相关对象定义共同特征的一般类,然后其他类(更特殊的类)可以继承这个一般类,每个进行继承的类都可以添加其特有的内容。被继承的类称为超类(superclass)/父类,继承的类称为派生类/子类(subclass)。一旦创建了一个定......
  • JAVA-面向对象的概念
    面向对象的概念:面向对象编程:OOP(Object-OrientedProgramming)使用类和对象开发程序的基本步骤:对于面向对象编程,主要工作就是编写类。面向对象开发的步骤:l 开发类,类=属性(成员变量)+方法l 通过new关键字创建对象l 使用类中的属性和方法:对象.属性名 对象.方法名()类......