Srping MVC:
1、InternalResourceViewResolver 视图解析器 即配置一个bean class="org.springframework.web.servlet.view.InternalResourceView"
1、特性 property(参数 name 特性名 value 特性值)
1、prefix 前缀 如/WEB-INF/view
2、returnVal 后缀 .jsp
2、配置DispatcherServlet
<servlet>
<servlet-name>springDispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
//init 初始化 param 参数
<init-param>
//contextConfigLocation 配置springmvc文件所在位置
//如果不配置 默认位置/WEB-INF/<servlet-name>-servlet.xml
//servlet-name指的上面配置的servlet-name值如springDispatcherServlet
<param-name>contextConfigLocation</param-name>
<param-value>classpath:srpingmvc.xml</param-value>
</init-param>
//1指加载时创建
<load-on-startup>1</load-on-startup>
</servlet>
//对上面的servlet做映射
<servlet-mapping>
//映射哪一个控制器
<servlet-name>springDispatcherServlet</servlet-name>
//拦截什么请求
<url-pattern>/</url-pattern>
</servlet-mapping>
3、自定义扫描包 context:component-scan(上下文扫描组件) base-package(指定扫描包)(基础包 即com.yue 此基础包下所有包)
4、controller注解 标注此类为控制器(请求处理器)
5、requestmapping("请求")注解 来映射请求
-----------------------------------------------------------------------
requestmapping可以注解类 即 请求值应为(注解类+注解方法)
-----------------------------------------------------------------------
requestmapping 参数 value 请求URL method 请求的方法(get post patch(不懂)) params 请求的参数 heads 请求头
value="URL"
method=requestMethod.POST
params={"参数名=参数值","参数名","参数名!=参数值"}
支持简单的表达式 如参数名=参数值 或者参数名!=参数值
heads与params类似
-----------------------------------------------------------------------
requestmapping value 支持ant风格的通配符
如?匹配文件名一个字符 如/user/cr?a??=/user/create
*匹配文件名中的任意字符 如/user/*/create=/user/aaa/create
**匹配多层路径 如/user/**/create=/user/create 或者 /user/aaa/bbb/create
-----------------------------------------------------------------------
PathVariable 注解可以映射 requestMapping URL 路径中的占位符
如@requestMapping("delete/{id}")
public String delte(@PathVariable(value="id")Integer id){
system.out.println(id);
return "";
}
//@PathVariable(value="id")=@PathVariable("id") value是默认属性 可以省略
---------------------------------------------------------------------------------
REST:
GET 查 /love/1 HTTP GET 获得 ID=1的love
POST 增 /love HTTP POST 新增love
PUT 更 /love/1 HTTP PUT 更新一个ID=1的love
DELETE 删 /love/1 HTTP DELETE 删除一个ID=1的love
ID 通过 @PathVariable注解获得
PUT 和 DELTE 需要配置HiddenHttpMethodFilter 作用是可以将POST 请求转换为DELETE或者PUT
<filter>
<filter-name>HiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HiddenHttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
如何转换:
表单中添加一个name="_method" 的隐藏域 value=DELETE 或者 PUT
requestmapping(method=requestmethod.DELETE 或者 PUT)
Spring MVC 学习笔记(1)
最新推荐文章于 2024-08-08 00:04:17 发布