动力节点王鹤spring mvc笔记1

使用@RequestParam来处理请求参数与控制器参数不一致的情况

在形参的前面使用@RequestParam(value="" , required)

使用一个对象来接受参数

  1. 创建一个类
  2. 在形参里面声明这个类
  3. 在类的声明

Tomcat 的作用

1。 用来处理静态的资源
2。 用来处理其他未映射的Servlet请求

在ServletMapping里面url-pattern设置的“/”

1. 表示的意思是没有设置映射的所有Servlet请求,当你的Servlet请求里面的URLpattern里面设置为斜杠的时候,会替代tomcat里面的default请求
2. 这会导致所有的请求都会通过DispatcherServlet来处理所有的静态资源,默认情况下,DispatcherServlet是没有处理静态资源的能力的,
3. 没有静态资源的的配置所有

处理静态资源的方式

  1. 在springmvc里面加入一个标签mvc:default-servlet-handler
  2. 原理是: 加入这个标签之后,框架会自动的创建出来一个控制器的对象DefaultServletHttpRequestHandler(类似于我们自己创建的Controller)。
  3. DefaultServletHttpRequestHandler这个对象可以把解耦灾厄请求转发给tomcat的default这个Servlet

使用Java对象来接受参数,要求参数名和属性名一样

同时,在spring没mvc接受参数的同时,可以使用list,map,array 作为参数,但是与此同时前端页面会变得十分复杂,不推荐使用

在使用处理方法的返回值

1 ModelAndView可以表示数据和视图
2 String可以表示视图,但是不可以携带数据,使用request。setAttribute()来携带数据
3 使用void Object 来处理Ajax的请求

把一个类转化成一个json对象

* 首先引入JSON依赖
* 在配置文件用加入驱动
* 加入ResponseBody

第二种处理

<mvc:resources mapping = "" loacation = "">
  • mapping 表示的是静态资源的uri地址,使用通配符**

  • location表示的是静态资源在项目中的目录中的位置

    一般mapping使用** 代表文件夹下面的一个文件或者多级目录

    location使用以 / 开头,代表以根目录开头

<mvc:resouces mapping = ".images/**" location = "/images/" />

相对路径和绝对路径

根据“访问路径是否可以独立完成资源准确定位”的判别标准,可以将访问路径分为绝
对路径与相对路径。

通常的 URL 资源访问路径由两部分构成: 访问路径与资源名称。

image-20210717012432009

绝对路径

而对于计算机中 Web 应用的绝对路径, 则是一个带有 http 访问协议的绝对路径。如下

http://127.0.0.1:8080/primary/index.jsp

相对路径

相对路径,是指仅根据访问路径无法准确定位资源的路径。 相对路径必须要结合其参照
路径才可组成可以准确定位资源的绝对路径。

在 Web 应用中,相对路径的写法有两种:一种是以斜杠开头的相对路径,一种是不以
斜杠开头的相对路径。 根据相对路径是否以斜杠开头,且出现的文件所处位置的不同,其
默认的参照路径是不同的。 这也是相对路径容易出错的地方:确定参照路径。

以斜杠开头的相对路径
  • 加斜杠访问的是tomcat路径下面的地址加上访问路径的地址
  • 使用EL表达式${pageContext.request.contextPath}来获取应用名
  1. 前台路径:所谓前台路径是指,由浏览器解析执行的代码中所包含的路径。
    • 前台路径的特征是
  2. 后台路径:所谓后台路径是指,由服务器解析执行的代码及文件中所包含的路径。
    • 后台路径的特征是
不以斜杆开头的路径
  • 不以斜杠开头的相对路径,无论是前台路径,还是后台路径, 其参照路径都是当前资源
    访问路径,而不是当前资源的保存路径

    言下之意就是当前路径 现在资源名称 + 访问资源名称

  • 可以使用base标签指定一个基地址。
posted @ 2021-09-03 20:39  zzuli_DYS  阅读(152)  评论(4)    收藏  举报