默认web地址_SpringMVC详解----Web层
1. SpringMVC的组件
a. 前端控制器(DispatcherServlet)
本质上是一个Servlet,相当于一个中转站,所有的访问都会走到这个Servlet中,再根据配置进行中转到相应的Handler中进行处理,获取到数据和视图后,再使用相应视图做出响应。
b.处理器映射器(HandlerMapping)
本质上就是一段映射关系,将访问路径和对应的Handler存储为映射关系,再需要时供前端控制器查阅。
c.处理器适配器(HandlerAdapter)
本质上是一个适配器,可以根据要求找到对应的Handler来运行。前端控制器通过处理器映射器找到对应的Handler信息之后,将请求响应和对应的Handler信息交由处理器适配器处理,处理器适配器找到真正Handler执行后,将结果即modelAndview返回给前端控制器。
d.视图解析器(ViewResolver)
本质上也是一种映射关系,可以将试图名称映射到真正的视图地址。前端控制器调用处理器适配完成后得到modle和view,将view信息传给视图解析器得到真正的view。
e.视图渲染(View)
本质上就是将handler处理器中返回的model数据嵌入到视图解析器解析后得到jsp页面中,向客户端做出响应
图解:
2. SpringMVC入门案例
1.创建Web项目,并导入SpringMVC相关开发包。
2.配置前端控制器:
本质上是一个servlet,再当前web项目中配置该servlet
springmvcorg.springframework.web.servlet.DispatcherServletspringmvc*.action复制代码
3.生成SpringMVC的核心配置文件
SpringMVC默认会自动再web应用的WEB-INF目录下去寻找[前端控制器ServletName]-servlet.xml作为当前SpringMVC的核心配置文件。
创建这个文件,这个文件本身就是Spring的配置文件,所以导入Spring相关的约束信息,包括beans、context、mvc
4.创建处理器,编写代码
想要开发一个处理器,写一个类实现Controller接口,在其中的handlerRequest中编写代码处理请求,并将处理好的数据和目标视图封装到ModelAndView中返回
5.配置处理器映射器中的路径和处理器的映射关系
6.配置视图解析器
7.开发视图
8.发布应用,通过浏览器访问
整体流程:
3. 修改SpringMVC核心配置文件的位置
SpringMVC默认在和web.xml相同的位置即WEB-INF目录下寻找核心配置文件,文件名默认[前端控制器Servlet-name]-servlet.xml 如果需要,可以通过配置,手动指定核心配置文件的位置,和文件的名称:
springmvcorg.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:/springmvc-servlet.xmlspringmvc*.action复制代码
4. SpringMVC的注解方式配置
SpringMVC支持使用注解方式配置,比配置文件方式更加的灵活易用,是SpringMVC使用的主流模式。
1 在配置文件中开启SpringMVC的注解模式
2.使用注解开发Controller
3.发布应用,通过浏览器访问
4.整体流程
5.SpringMVC注解方式工作原理
a. 当服务器启动时,先会加载web.xml,之后通过引入核心配置文件加载springmvc-servlet.xml。就会解析该xml配置文件。
b. 当解析到包扫描时,扫描指定的包,并将含有@Controller注解的类解析为处理器。
c.如果配置过mvc:annotation-driver/就会解析Spring-MVC注解
d.解析@RequestMapping(value="/hello.action"),将指定的地址和当前方法的映射关系进行保存。
e.当用户发出请求访问一个地址时,SpringMVC寻找该地址映射关系,如果存在,则找到响应处理器响应方法执行,如果找不到,则报404。
最后
欢迎大家有兴趣的可以关注我的公众号【java小瓜哥的分享平台】,文章都会在里面更新,还有各种java的资料都是免费分享的。希望与大家一起进步努力!
默认web地址_SpringMVC详解----Web层相关推荐
- Java Web开发技术详解~Web的概念
Web 是一种分布式应用架构,旨在共享分布在网络上的各个Web服务器中的所有互相链接的信息. Web 采用客户/服务器通信模式,客户与服务器之间用HTTP协议通信. Web 使用超级文本技术(HTML ...
- web.config配置文件详解
一.认识Web.config文件 Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式), ...
- web.xml配置详解
往者不谏 来者可追 写作是最好的社交 新随笔 订阅 web.xml配置详解 Web.xml常用元素<web-app><display-name></display-nam ...
- Web.config配置文件详解(新手必看)
Web.config配置文件详解(新手必看) 花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点. ...
- java web工程web.xml配置详解
转载自:http://blog.csdn.net/believejava/article/details/43229361 这篇文章主要是综合网上关于web.xml的一些介绍,希望对大家有所帮助,也欢 ...
- javaweb:web.xml配置详解
Web.xml详解: 1.web.xml加载过程(步骤) 首先简单讲一下,web.xml的加载过程.当启动一个WEB项目时,容器包括(JBoss.Tomcat等)首先会读取项目web.xml配置文件里 ...
- 160329(二)、web.xml配置详解
1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...
- Java web之web.xml配置详解
什么是web.xml web.xml是web项目的配置文件,一般的web工程都会用到web.xml来配置,方便大型开发.web.xml主要用来配置Filter,Listener,Servlet等.但是 ...
- JavaWeb web.xml配置详解
参考: XML 教程 Java web之web.xml配置详解 Javaweb三大组件是:Servlet,Filter,Listener. 1.Servlet Servlet作为中转处理的容器,连接了 ...
最新文章
- edge新版 能够正则式_Python爬虫七 数据提取之正则
- H3C V7 AC https页面无法重定向问题处理经验总结
- SAP中国际贸易条款的含义
- 【剑指offer】面试题56 - I:数组中数字出现的次数 I
- 软考网络工程师笔记-综合知识1
- python调用dos命令_基于Python执行dos命令并获取输出的结果
- 程序员的浪漫:教你如何用MATLAB向女生表白
- sql server 触发器
- nginx reload报错 ---nginx: [alert] kill(1668, 1) failed (3: No such process)
- 量子纠缠计算机里的灵魂意识,量子纠缠理论告诉我们,灵魂真的存在于你我身体?...
- CKPlayer视频地址加密方法
- 生成指定范围的随机数
- 暗黑2符文之语大全_暗黑破坏神2符文之语一览,附符文镶嵌顺序和底材
- Linux用户与权限系统
- SIM卡交换方案的工作原理
- 快速掌握Charles抓包工具 [MP4] (115M)
- iwatch表盘壁纸图片_iwatch壁纸大全卡西欧表盘app
- Nginx使用及可能遇到问题
- 平顶山学院微信缴学费使用说明
- Shader各种效果
热门文章
- 什么原因导致百度搜索比Google要少很多?
- 详细描述一下 Elasticsearch 搜索的过程?
- PHP5.3, PHP5.4, PHP5.5新特性
- 数字货币买卖单、价格、数量计算方式浅谈
- centos上安装和配置tomcat
- 用计算机演银河系,专家首次用计算机模拟类银河星系 分辨率极高
- Python精通-运算符与基本数据类型(二)
- linux mint更换mac,在Ubuntu、Linux Mint上安装Mac OS X主题
- 面试题:为什么局部变量不赋初始值报错
- 深入理解SpringBoot(2)