目录
前言
朋友们大家好,我们来到了新的内容SpringMvc,同样话不多说,开始今天的内容:
1. 正文
1. 什么是MVC架构?
2. 什么是springMVC框架?
3. 为什么使用springMVC架构?
4. 快速入门springMVC?
5. springMVC的流程。
6. springMVC如何接受请求的参数。
7. springMVC如何把控制层的参数转发到前端页面?
2. 什么是MVC架构?
3. 什么是SpringMvc?
springmvc是spring框架的一种分支。SpringMVC 是类似于 Struts2 的一个 MVC 框架,在实际开发中,==接收浏览器的请求响应,对数据进行处理,然后返回页面进行显示==,但是上手难度却比 Struts2 简单多了。而且由于 Struts2 所暴露出来的安全问题,SpringMVC 已经成为了大多数企业优先选择的框架。
4. 为什么使用SpringMvc?
5. 快速入门SpringMvc
5.1 创建一个web工程
5.2 引入SpringMvc的依赖
<!--maven可以把该依赖相关的依赖都引入。-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.9.RELEASE</version>
</dependency>
5.3 创建控制层
5.4 配置springmvc的配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd">
<!--1.包扫描 扫描我们自己的控制层类所在的包或者父包-->
<context:component-scan base-package="com.fan.controller"/>
</beans>
5.5. 引入前端控制器 web.xml
<!--注册servlet-->
<servlet>
<servlet-name>springmvc01</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--加载springmvc的配置文件-->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc01.xml</param-value>
</init-param>
</servlet>
<!--servlet映射路径
/: 表示所有的控制层路径 以及静态资源
/*: 表示全部 包含jsp网页
-->
<servlet-mapping>
<servlet-name>springmvc01</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
5.6 测试
记得我们的汤姆猫(tomcat服务器)
6. SpringMvc的流程
* 1. 客户端发生请求http://localhost:8080/145springmvc01/hello01
* 2. 来的tomcat服务器。
* 3. springmvc的前端控制器DipatcherServlet接受所有的请求。
* 4. 查看你的请求地址和哪个@RequestMaping匹配。
* 5. 执行对应的方法。方法会返回一个字符串。springmvc把该字符串解析为要转发的网页。
* 6. 把该字符串经过视图解析器拼接。
* 7. 拿到拼接的地址,找到对应的网页。
7. SpringMvc如何接受请求参数。
7.1 接受参数个数少的
7.2 接受的参数。
比如:表单提交时 注册 添加。
解决: 可以把所有的请求参数封装到一个实体类对象中。
7.3 接受日期类型的参数
解决办法
8. 处理静态资源
什么是静态资源:比如:css,js,img,html
解决方案