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

相关推荐
凤山老林41 分钟前
04-Java JDK, JRE和JVM
java·开发语言·jvm
camellias_7 小时前
【无标题】
java·tomcat
咸鱼2.07 小时前
【java入门到放弃】需要背诵
java·开发语言
椰猫子7 小时前
Java:异常(exception)
java·开发语言
GreenTea8 小时前
一文搞懂Harness Engineering与Meta-Harness
前端·人工智能·后端
win x8 小时前
Redis 使用~如何在Java中连接使用redis
java·数据库·redis
星晨雪海8 小时前
基于 @Resource 的支付 Service 多实现类完整示例
java·开发语言
阿维的博客日记9 小时前
什么是逃逸分析
java·juc
Ricky_Theseus9 小时前
C++右值引用
java·开发语言·c++
Rick19939 小时前
Java内存参数解析
java·开发语言·jvm