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="张三">

相关推荐
幼稚园的山代王1 小时前
JDK 11 LinkedHashMap 详解(底层原理+设计思想)
java·开发语言
不积硅步1 小时前
jenkins安装jdk、maven、git
java·jenkins·maven
Cult Of1 小时前
一个最小可扩展聊天室系统的设计与实现(Java + Swing + TCP)
java·开发语言·tcp/ip
GIS开发者1 小时前
对nacos进行信创改造,将其中的tomcat替换为保兰德的中间件
java·中间件·nacos·tomcat·保兰德
晚风_END2 小时前
postgresql数据库|连接池中间件pgbouncer的部署和配置详解
数据库·后端·spring·postgresql·中间件·个人开发
weixin_440784112 小时前
OkHttp使用指南
android·java·okhttp
独自破碎E2 小时前
LCR003-比特位计数
java·开发语言
梵得儿SHI2 小时前
(第九篇)Spring AI 核心技术攻坚:安全防护 企业级 AI 应用的风控体系之全链路防护(API 安全到内容合规)
java·人工智能·安全·spring·安全防护·springai·企业级ai
pcm1235672 小时前
设计C/S架构的IM通信软件(2)
java·c语言·架构