SpringMVC框架(上)

SpringMVC处于表现层

入门案例

1.检查依赖

2.创建三级包controller,创建HelloController类

3.在类里加@Controller不足以说明是控制器,加RequestMapping才算

controller意义:把类交给spring管理

dispatcherServlet

tomcat一旦启动,

<load-on-startup>1</load-on-startup>

此代码生效,生效后加载

<init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param>

所以要加载springmvc.xml

扩展名匹配:结尾必须带.do,如果不带就匹配不上无法拦截

<servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>

/这是dispatcherServlet拦截所有请求

<context:component-scan base-package="com.qcby" />

找到@Controller

一个请求到达表现层的流程

入门案例结合图上图的解释

所有请求都会被DispatcherServlet堵住,然后解读url找到处理器映射器,解读/hello.do

然后找到适配器适配controller(在此切断,不会到业务层)controller直接返回结果,结果在给DispatcherServlet,然后DispatcherServlet找视图解析器,视图解析器返回视图渲染,最后呈现页面

超链接默认是GET请求

@RequestMapping(path = "/hello.do" ,method = RequestMethod.POST)

对应

<%-- 超链接 --%> <h3>入门</h3> <a href="/say/hello.do">入门程序</a> <form method="post" action="/say/hello.do"> <input type="submit" value="提交"> </form>

补充:在后面加params

@RequestMapping(path = "/hello.do" ,method = RequestMethod.POST, params = "username")

必须传递username否则也匹配不上

对应:

<input type="text" name="username" value="张三">

相关推荐
小码哥_常4 小时前
一套自己部署的 IM,客户端是同一份 Flutter
前端·后端
学长毕设6 小时前
基于SpringBoot的实验室资产管理系统
java·spring boot·后端
zzu123zsw8 小时前
从臃肿的模板调用到声明式契约:深入 UniHttp 动态代理与多渠道生命周期扩展
java·spring boot·microsoft·unihttp
源码集结号8 小时前
云诊所门诊系统源码,基于SpringBoot+Vue.js架构,支持多租户设计与Docker容器化部署
java·spring boot·源码·医院信息系统·门诊系统·诊所系统
努力的小雨9 小时前
给 AI 眼镜开发应用有多难?我从零做了一个陪练,还上架了
后端
论文复现现场9 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
啃瓜子的松鼠9 小时前
泛微OAe9-后端二开异步调用
java
秋天的怀念_David10 小时前
第二十一夜 · 数字黑洞与西西弗斯的惩罚
java·程序人生·算法
excel10 小时前
双 Token 与前端使用 Crypto 公私钥鉴权换 Token,哪种方案更好?
前端·后端
外收内放10 小时前
Python基础语法练习题(73)
java·前端·python