170821-关于SpringMVC的知识点

1.SpringMVC 概述

Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一  Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架  Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请 求的控制器,而无须实现任何接口。  支持 REST 风格的 URL 请求  采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性

2.SpringMVC之HelloWorld

步骤:

– 加入 jar 包

– 在 web.xml 中配置 DispatcherServlet

– 加入 Spring MVC 的配置文件

– 编写处理请求的处理器,并标识为处理器

– 编写视图

?jar 包:    –commons-logging-1.1.3.jar    –spring-aop-4.0.0.RELEASE.jar    –spring-beans-4.0.0.RELEASE.jar    –spring-context-4.0.0.RELEASE.jar    –spring-core-4.0.0.RELEASE.jar    –spring-expression-4.0.0.RELEASE.jar    –spring-web-4.0.0.RELEASE.jar    –spring-webmvc-4.0.0.RELEASE.jar   web.xml文件:

?配置 DispatcherServlet :DispatcherServlet 默认加载 /WEB- INF/<servletName-servlet>.xml 的 Spring 配置文件,    启动 WEB 层 的 Spring 容器。可以通过 contextConfigLocation 初始化参数自定 义配置文件的位置和名称

? 配置自动扫描的包

? 配置视图解析器:视图名称解析器:将视图逻辑名解析为: /WEB-INF/pages/<viewName>.jsp

3.使用 @RequestMapping 映射请求

?Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求

?在控制器的类定义及方法定义处都可标注  @RequestMapping  – 类定义处:提供初步的请求映射信息。相对于 WEB 应用的根目录

– 方法处:提供进一步的细分映射信息。相对于类定义处的 URL。若 类定义处未标注 @RequestMapping,则方法处标记的 URL 相对于 WEB 应用的根目录

?DispatcherServlet 截获请求后,就通过控制器上@RequestMapping 提供的映射信息确定请求所对应的处理方法。    映射请求参数、请求方法或请求头

[email protected] 除了可以使用请求 URL 映射请求外,还可以使用请求方法、请求参数及请求头映射请求

[email protected] 的 value、method、params 及 heads 分别表示请求   URL、请求方法、请求参数及请求头的映射条件,他们之间是与的关系,联合使用多个条件可让请求映射 更加精确化。

?params 和 headers支持简单的表达式:

– param1: 表示请求必须包含名为 param1 的请求参数

– !param1: 表示请求不能包含名为 param1 的请求参数

– param1 != value1: 表示请求包含名为 param1 的请求参数,但其值 不能为 value1

–{“param1=value1”, “param2”}: 请求必须包含名为 param1 和param2 的两个请求参数,且 param1 参数的值必须为 value1!         使用 @RequestMapping 映射请求

? Ant 风格资源地址支持 3 种匹配符:

– ?:匹配文件名中的一个字符

– *:匹配文件名中的任意字符

– **:** 匹配多层路径

[email protected] 还支持 Ant 风格的 URL:

–/user/*/createUser: 匹配   /user/aaa/createUser、/user/bbb/createUser 等 URL

–/user/**/createUser: 匹配   /user/createUser、/user/aaa/bbb/createUser 等 URL

–/user/createUser??: 匹配   /user/createUseraa、/user/createUserbb 等 URL     @PathVariable 映射 URL 绑定的占位符

?带占位符的 URL 是 Spring3.0 新增的功能,该功能在 SpringMVC 向 REST 目标挺进发展过程中具有里程碑的 意义

?通过 @PathVariable 可以将 URL 中占位符参数绑定到控 制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过

@PathVariable("xxx") 绑定到操作方法的入参中,需要注意的是:该注解的value属性值要与占位符保持一致。

4.REST:

即 Representational State Transfer。(资源)表现层状态转化。是目前最流行的一种互联网软件架构。

它结构清晰、符合标准、易于理解、扩展方便, 所以正得到越来越多网站的采用.

HTTP 协议里面,四个表示操作方式的动 词:GET、POST、PUT、DELETE。

它们分别对应四种基本操作:

GET 用来获 取资源,

POST 用来新建资源,

PUT 用来更新资源,

DELETE 用来删除资源。

示例:   –/order/1 HTTP GET :得到 id = 1 的 order

–/order/1 HTTP DELETE:删除 id = 1的 order

–/order/1 HTTP PUT:更新id = 1的 order

–/order HTTP POST:新增 order

?HiddenHttpMethodFilter:浏览器 form 表单只支持 GET 与 POST 请求,而DELETE、PUT 等 method 并不支 持,Spring3.0  添加了一个过滤器,可以将这些请求转换 为标准的 http 方法,使得支持 GET、POST、PUT 与 DELETE 请求。

时间: 2024-10-09 04:30:22

170821-关于SpringMVC的知识点的相关文章

SpringMVC简单知识点

看了一下<SpringMVC学习指南>,想着总结一下自己学到的东西. 众所周知,MVC模式就是模型.视图.控制器模式,而我认为SpringMVC相较于普通MVC模式的好处在于,它可以实现依赖注入.依赖注入是这样处理此类情景的:接管对象的创建工作,并将该对象的引用注入需要对象的组件.为了能让框架进行依赖注入,程序员需要编写特定的set方法或者构建方法.注意:Spring管理的对象称为beans. 在MVC模式中,每个HTTP请求都发送给控制器,请求中的URI标识出对应的action.action

SpringMVC的知识点

什么是SpringMVC? SpringMVC是一个基于Java实现了MVC设计模式的轻量级Web框架.通过把model-view-controller进行分离,将Web层进行职责解耦,把Web应用分成逻辑清晰的几部分,方便开发人员之间的配合 SpringMVC的执行流程? 用户发送请求给DispatcherServlet,DispatcherServlet调用HandlerMapping HandlerMapping通过请求中的URL找到对应的Handler,并返回Handler给Dispat

springMVC常用知识点的整理

forward和redirect的区别是什么 Spring MVC中redirect重定向3种方式 ========================================== 原文地址:https://www.cnblogs.com/MarlonKang/p/11739117.html

Bootstrap关联select菜单,包罗万象的知识点

今天我将介绍自定义的bootstrap关联select菜单,主要应用场合有省市级关联菜单等等,那么就先拿这个例子来讲,当然其他场景的关联菜单也同样适用.说实话,封装好一个通用的组件还是需要花费很多精力的和时间的,所谓通用,自然要考虑周全,叹!这次整理的Bootstrap关联select,里面也涉及到了很多jquery.ajax.springMVC等等知识点,可谓包罗万象! 首先,请允许我代表该自定义组件做一番小小的介绍. "hi,你好,我叫yunm.combox.js,主人给我起的名字,其实呢,

SpringMVC框架之第四篇

5.SpringMVC异常处理 5.1.异常分类 1.可预知异常: Java编译时可检测异常,例如:IOException.SQLException等. 自定义异常(继承Exception父类的自定义类即为自定义异常). 2.不可预知异常: Java运行时异常,例如:NullPointerException.IndexOutOfBoundsException等. 5.2.SpringMVC异常处理 在JavaEE项目的开发中,不管是持久层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过

0105 springMVC开发基础

背景 已经明确了MVC的思想和SpringMVC的基本流程,下面就都具体的mvc开发细节知识了. @RequestMapping springMVC核心流程中,启动阶段会把注解@RequeestMapping注解所配置的内容保存到HandlerMapping中,然后等待请求到达. 看一下源码: 简单分一下类: 方法 说明 name,value,path 标识控制器方法的访问url,可以配置多个 method 处理的方法,http的标准方法,比如get,post等 params 参数 header

springMVC知识点

1 全注解 <mvc:annotation-driven> 1:自动注册基于注解风格的处理器需要的DefaultAnnotationHandlerMapping. AnnotationMethodHandlerAdapter 2:支持ConversionService自动注册(类型转换) 3:支持验证框架的自动探测并注册 4:支持@RequestBody 和 @ResponseBody,支持JSON数据转换(只 需将Jackson实现放置到classpath) <context:comp

SpringMVC知识点汇总

1.${SESSION_USER_V2} 会从大到小查找作用域中的attribute          PageContext                          PageScope          servletRequest                       RequestScope          httpSession                         SessionScope          Application/servletContex

springMVC学习笔记--知识点总结1

以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- 配置渲染器 --> <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property