Spring笔记5——SpringMVC

简介

这个技术隶属于spring,是spring技术中的一部分。 

 

 

 

 

入门案例

 

spring-webmvc的版本与前面spring包的版本保持一致5.2.10

 

作为spring技术,先要把它做成一个bean,用与@Component功能一样的注解@Controller(专用于开发表现层)

然后定义任意一个方法,返回值设置为期待的类型(json数据就是string类型) 

页面想调用这个方法,访问的路径在@RequestMapping里设置。

 

 

 

 

第一个方法是告诉tomcat容器加载spring配置类。

第二个方法是拦截所有请求,交给springmvc去处理。

 

 

 

 

 工作流程

服务器启动的工作流程

 1.服务器启动之后第一件事是加载服务器的配置,在web3.0之后不用web.xml了,用配置类。在使用springmvc时,这个配置类执行了ServletContainersInitConfig这个类,初始化了web容器

2.WebApplicationContext这个对象是springmvc的容器最终体现的对象

 

3.加载具体的配置

 

 配置是组件扫描:

 

 4.扫的是controller:

 

 5.这里用/save关联了save方法,以后用户发出/save请求的时候就会被拦截到这个方法中(这个映射关系不是在这里定义的,所有的springmvc的映射关系是放在一起统一管理的,不是这里)

6.设置拦截所有进入tomcat的请求全部交给springmvc来处理

 

 

 

 一次具体请求流程

当用户发送了一次请求localhost/save,web容器收到,然后根据之前的设定把这个请求交给springmvc。springmvc根据之前@requestMapping的配置,解析请求路径发现是save()方法,然后就把save()执行后的返回值直接作为响应体返回给请求方。

 

 

 

bean加载控制

 

 

 

 

 

 

 

 

 

 

请求与响应

请求映射路径

 

 

 

             ↓

 

GET请求参数

 

 

POST请求参数

 

【图片】

中文参数 过滤器处理

 

 

请求参数

普通参数

 

 

 

 

POJO参数 

 

 

嵌套POJO参数

 

 

 

 

集合保存普通参数

 

 

总结就是:默认的,名称都能对上;对不上的,用@RequestParam对一下就行

 

如果要用集合参数传递,写成下面的代码就会出错:

 

 报错:

 

 (<init>表示构造函数)这里的报错意思是找不到list的构造方法,因为list被当作一个引用类型去解析了,程序会去找其构造方法制造其对象,然后用set方法去给集合的属性赋值。但我们是想让外部数据做成集合中的数据出现,而非集合的属性(集合的属性都是些length什么的)

 

使用注解:

 

 就可以解决

 

json数据传递参数

步骤:

 

 

 

 

两个注解:

 

 

 

 演示:

 

 

 

 

 

日期类型参数传递

 

 

 

 

转换的原理:

 

 

 

响应

 

 

 

 

 

 

 

 

 REST风格

REST简介

访问网络资源的格式转换

 

 

 

 

 

 

 

 

 

 

入门案例

 

 

 

 以前使用这个注解不区分提交方式,现在开始区分了:

 

 

 

 

 

 

RESTful快速开发

 

 

 

 

 案例

 

 

 

 

 

 

 

posted @   ban_boi  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示