Spring MVC 中 如何解析视图及视图解析的详细流程

SpringMVC视图解析器:InternalResourceViewResolver配置与使用 在SpringMVC框架中,视图解析器是连接控制器和视图的关键组件,负责将控制器返回的逻辑视图名转换为实际的视图对象。作为SpringMVC最常用的视图解析器之一,InternalResourceViewResolver主要用于解析JSP页面和其他Web应用服务器内部资源。通过合理配置InternalResourceViewResolver,可以实现视图解析的灵活控制,简化控制器代码,提高应用的可维护性。本文将深入探讨InternalResourceViewResolver的工作原理、配置方法和实际应用场景 阅读详情

SpringMVC 如何解析视图

请求处理方法返回值类型是

String
ModelAndView
View

SpringMVC都会奖其转化为ModelAndView对象,再给ViewResolver,最后变成视图对象,如JSP、JSTL、PDF等。

视图和视图解析器

  • 请求处理方法执行完成后,最终返回一个ModelAndView对象。对于那些返回String,View和ModeMap等类型的处理方法,Spring MVC 也会在内部将它们装配成一个ModelAndView对象,它包含了逻辑名和模型对象的视图。
  • SpringMVC 借助视图解析器(ViewResolver)得到最终的视图对象(View),最终的视图可以是JSP,也可能是Excel、JFreeChart等各种表现形式的视图。
  • 对于最终究竟采取何种视图对象对模型数据进行渲染,处理器并不关心,处理器工作重点聚焦在生产模型数据的工作上,从而实现MVC的充分解耦。

视图
视图的作用是渲染模型数据,将模型里的数据以某种形式呈现给客户。
为了实现视图模型和具体实现技术的解耦,Spring在org.springframework.web.servlet包中定义了一个高度抽象的View接口。
这里写图片描述

视图对象由视图解析器负责实例化。由于视图是无状态的,所以他们不会有线程安全问题。

视图解析器

  • SpringMVC为逻辑视图名的解析提供了不同的策略,可以在Spring WEB 上下文中配置一中或多种解析策略,并制定他们之间的先后顺序。每一种映射策略对应一个具体的视图解析器实现类。
  • 视图解析器的作用比较单一:将逻辑视图解析为一个具体的视图对象。
  • 所有的视图解析器都必须实现ViewResolver接口
    这里写图片描述

InternalResourceViewResolver

JSP是最常见的视图技术,可以使用InternalResourceViewResolver作为视图解析器。

这里写图片描述

未完待续。。。

Spring MVC的运行流程详解 Spring MVC作为一个广泛使用的框架,提供了灵活且强大的MVC架构支持。尤其在业务系统中,Spring MVC能够有效地处理大量并发请求,提供良好的用户体验。本文将详细讲解Spring MVC的运行流程,以电商交易系统为案例,帮助读者深入理解其工作原理。 阅读详情

相关推荐

java——Spring MVC的工作流程

在整个工作流程中,DispatcherServlet、HandlerMapping、HandlerAdapter和ViewResolver等组件的工作是在框架内部执行的。开发人员只需要配置DispatcherServlet,完成Controller中的业务处理,并在View中展示相应信息。

oopxiajun博客专栏 1166

SpringMVC之视图解析

SpringMVC如何解析视图

OceanStar的博客 707

Spring入门到精通:第七章 SpringMVC:1.SpringMVC简介和工作流程

在接下来的章节我们会介绍下Spring MVC。 一、MVC MVC是我们开发WEB应用程序的通用架构方式 MVC的核心思想是业务数据抽取和业务数据呈现相分离。 MVC:M(Model)+V(View)+C(Controller) M(模型层):业务数据的信息表示,通常是业务实体 V(视图层):为用户呈现数据的页面 C(控制层):调用业务逻辑产生合适的数据(Model),同时传递数据(Model)给视图层(View)呈现给用户 MVC:是一种架构模式,将业务逻辑和页面展示分离,使程.

悟纤学院 1万+

Spring MVC 中的视图解析器是什么?如何配置它

在 Spring MVC 中,控制器(Controller)的主要职责是处理用户请求,并产生模型数据(Model),同时指定该请求的逻辑视图名称(Logical View Name)。视图解析器的作用是将逻辑视图名称解析成实际的视图对象,以便最终在浏览器中呈现给用户。例如,当用户请求一个 URL 时,控制器可以返回一个逻辑视图名称为 “home”,而视图解析器会将其解析成一个 JSP 页面,最终在浏览器中渲染出来。

IT徐师兄 6716

【通俗易懂】Windows系统安装TensorRT

NVIDIA TensorRT是一个由NVIDIA公司开发的用于深度学习推理的高性能SDK。它专门设计用于在NVIDIA GPU上进行高效的神经网络推理,能够大幅度提升深度学习模型的推理速度和效率。TensorRT的主要特点包括:模型优化:TensorRT通过层融合、精度校准、动态形状等技术优化模型,减少推理时的计算量和内存占用。多精度推理:支持多种精度推理,包括FP32、FP16、INT8等,以平衡性能和精度。

王尼莫的博客 1587

渗透测试自学日志之漏洞复现篇:漏洞列表

复现成功的漏洞列表,有复现方式,各位可以参考。 网络安全,人人有责,使用本文进行非法活动,与本人无关

maverickpig的博客 2174

Spring MVC 视图解析器(JSP、Thymeleaf、Freemarker、 JSON/HTML、Bean)详解

Spring MVC 视图解析器(JSP、Thymeleaf、Freemarker、 JSON/HTML、Bean)详解

爱的叹息的专栏 1813

人工智能在高中教育中的应用现状剖析与挑战应对

人工智能在高中教育中的应用现状剖析与挑战应对

燕鹏 1338

springmvc视图解析器详解

springmvc视图解析器详解

Eaeyson的博客 1万+

英特尔SVS:十亿级向量搜索的硬件优化与LVQ压缩实战

向量搜索作为处理高维嵌入数据的核心技术,其核心原理是通过近似最近邻(ANN)算法在海量数据中快速找到相似项,以解决传统暴力搜索在规模上的瓶颈。这项技术的核心价值在于为推荐系统、图像检索、自然语言处理等AI应用提供高效的相似性匹配能力,尤其在RAG架构中成为连接非结构化数据与大语言模型的关键基础设施。面对十亿级数据带来的内存与算力挑战,局部自适应向量量化(LVQ)等压缩技术通过减少存储开销并保持精度,而硬件层面的深度优化则利用AVX-512等指令集大幅提升计算效率。本文聚焦于英特尔开源的Scalable Ve

weixin_42526310的博客 552

一根网线,让整个公司断网,二层环路真实事故复盘

那天晚上 23:47,监控告警突然爆了。核心交换机 CPU 100%。ARP 表暴涨。广播流量飙升。业务系统集体超时。5 分钟后,全公司断网。运维群里一句话:“是不是黑客攻击?但老网工都知道,这种现象只有一种可能:二层环路。

网络技术联盟站 346

Spring4MVC之视图解析流程

  流程查看方法   1. 在任一handle方法中打断点调试,如在HelloworldController的sayHello方法中打断点; 2. 启动调试;      大致流程   1. DispatcherServlet.doDispatch(HttpServletRequest, HttpServletResponse) 2. AnnotationMethodHandl...

langdashu 175

STM32F103RCT6的FLASH读写操作

STM32F103RCT6是一款常用的32位微控制器,它具有内置的FLASH存储器,可以用于存储程序代码和数据。在本文中,我们将详细介绍如何进行STM32F103RCT6的FLASH读写操作,并提供相应的源代码。写入数据时,我们通过将数据直接写入FLASH地址来完成。通过使用适当的API和规则,我们可以有效地读取和写入数据。写入FLASH时,我们需要按特定的规则进行编程。首先,我们需要包含适当的头文件和定义相关的宏和变量,以便在代码中使用FLASH API。类型的指针,我们可以直接读取FLASH中的数据。

UplKubernetes的博客 1033

Spring MVC 自定义视图解析器执行流程

本篇以自定义Excel视图为例 一、自定义视图 除了配置SSM环境以外,还需要支持生成Excel文件的jar包 本例jar包: spring xml文件配置: <context:component-scan base-package="com.jd"></context:component-scan> <bean class="org.springframework...

qiangzhogshou的博客 519

在最新版eclipse中配置使用AI AIcoder _AIcoder配置GPUSTACK使用_配置OLLAMA本地AI模型利用_集合---AI场景应用工作笔记

本文介绍了三款实用的编程辅助工具:一款便捷的反编译插件,可直接在插件市场安装使用;GitHub Copilot提供每月2000次代码补全和50条聊天记录的免费额度,支持智能代码提示功能;aicoder支持配置本地模型运行。这些工具都能有效提升开发效率,其中GitHub Copilot的智能补全功能尤为突出。

添柴程序猿的专栏 1231

yolov26改进 | 融合改进篇 | 轻量级移动端网络ShuffleNetV2融合CCFM参数量仅百万(附代码+修改教程)

本文介绍ShuffleNetV2与跨尺度特征融合模块CCFM融合改进的YOLOv26。ShuffleNetV2以硬件效率为导向,通过通道分割、轻量卷积和Channel Shuffle减少冗余计算与内存访问,在降低参数量和GFLOPs的同时保持高效特征提取;CCFM进一步加强不同尺度特征交互,弥补轻量主干语义表达不足的问题。本人在轻量模型上测试后,参数量和计算量明显下降,检测精度有一定提升,适合移动端、边缘设备及实时检测任务。文中提供完整代码、配置文件、模块注册及Codex修改思路,方便复现、对比和二次创新。

Snu77的博客 197

Spring MVC解析视图流程

使用Spring MVC的时候可能的返回值有很多种,可能是下面这些类型或者其它更多类型: String View ModelAndView ModelMap 这些都最终会转为ModelAndView对象让ViewResolver(视图解析器)解析,并且醉倒最终返回的视图对象。 这个ModelAndView对象包含了逻辑名 和模型对象的视图 序 号 人员 饰演部分

lyfuci10的博客 414

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

简单的Spring MVC入门程序,对于Spring mvc工作流程的理解,servlet标签和servlet-mapping 理解,视图解析器

javaweb SpringMvc的组成:jsp,JavaBean,servlet 可以使用Spring所提供的功能 提供了前端控制器DispatcherServlet,不需要细化Servlet 执行校验 简单的MVC程序 一 需要的包: 四个spring核心包,一个servlet. 二 前端控制器,编写XML控制Servelet 主要作用:DispatcherServlet,拦截中转作用 前沿知识:servlet标签和servlet-mapping 理解 先执行 <url-pattern

594

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Spring MVC视图和视图解析器流程 另附Excel上传

Spring MVC中分逻辑视图和非逻辑视图: 逻辑视图是需要视图解析器(ViewResolver)进行进一步定位的。例如,Spring MVC之所以可以根据返回的字符串,能找到对应的JSP,就是因为使用了逻辑视图,经由视图解析器的定位后,才能找到视图将数据模型进行渲染展示给用户查看 非逻辑视图不需要定位视图的位置,它只需要将数据模型渲染出来即可。实际工作中视图解析器 InternalResou...

XLBoy的博客 244

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Spring MVC核心类、注解、工作流程、视图解析器和一个简单的Spring MVC应用

文章目录1 Spring MVC入门1.1 Spring MVC概述1.1.1 Spring MVC框架的特点2 第一个Spring MVC应用3 SpringMVC的工作流程4 Spring MVC的核心类和注解4.1 DispatcherServlet4.2 @Controller注解类型4.3 @RequestMapping注解类型4.3.1 标注在方法上4.3.2 标注在类上 1 Spring MVC入门 1.1 Spring MVC概述   Spring MVC是Spring提供的一个实现Web

Haa__的博客 902

Spring mvc请求处理流程详解(一)之视图解析

前言  Spring mvc框架相信很多人都很熟悉了,关于这方面的资料也是一搜一大把。但是感觉讲的都不是很细致,让很多初学者都云里雾里的。本人也是这样,之前研究过,但是后面一段时间不用发现又忘记了。所以决定写下来,以备后用。   本系列文基于spring-4.3.1,配置方式全部基于java-based方式从配置讲起先上一段配置的代码:@EnableWebMvc @Configuration pu

拨开云雾看世界 2万+

Spring MVC 之 DispatcherServlet流程

Spring MVC 的核心是 DispatcherServlet,该类负责接收客户端请求,然后,并返回响应结果。在本文中,我们将深入了解 DispatcherServlet 的处理流程和源码解析。

m88997766的博客 288

Spring入门(十二):Spring MVC使用讲解

提到MVC,参与过Web应用程序开发的同学都很熟悉,它是展现层(也可以理解成直接展现给用户的那一层)开发的一种架构模式,M全称是Model,指的是数据模型,V全称是View,指的是视图页面,如JSP、Thymeleaf等,C全称是Controller,指的是控制器,用来处理用户在客户端(浏览器)发起的请求。Spring MVC就是基于MVC模式实现,能够帮你构建像Spring框架那样灵活和松耦合的Web应用程序。也就是说,Spring MVC是基于Spring的,它主要用来开发Web应用程序。

cxytony的博客 653
上一篇: 在eclipse程序中设置的断点上有一个斜杠无法进行debug调试
下一篇: Spring MVC 中 InternalResourceViewResolver 处理 JSTL
杜鲁门
博客等级 码龄11年 219粉丝 316原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值