SpringMVC是Spring的一个组件,所以我们在使用SpringMVC的时候也会使用到Spring
使用环境
- JDK:1.8
- Tomcat:9.0.3
- spring:5.2.8
- 编译器:IDEA2019
1、导包
需要引入Spring-web和Spring-webmvc两个包,可以到maven仓库里面去下载或者使用maven依赖
2、ApplicationContext.xml配置(Spring的核心配置文件)
- ApplicationContext.xml文件需要放在WEB-INF下,并且需要把名字改为拦截的serlvet-name+ -Servlet,比如我这边的拦截名字为mvc,所以我需要把配置文件名改为mvc-Servlet.xml
- 如果不放在WEB-INF下,需要在web.xml文件中进行路径配置(如下web.xml文件中的init-param标签配置)
- 注意命名空间的问题
<?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"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 开启spring注解驱动-->
<context:component-scan base-package="com.cjh"/>
<!-- 开启mvc注解驱动-->
<mvc:annotation-driven></mvc:annotation-driven>
</beans>
3、web.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet> <servlet-name>mvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param> <param-name>contextConfigLocation</param-name>
<!-- 说明Spring核心配置文件的位置-->
<param-value>classpath:ApplicationContext.xml</param-value>
</init-param> </servlet> <servlet-mapping> <servlet-name>mvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
4、java的实现
- Controller类
@Controller
@RequestMapping("userController.do")
public class UserController {
public UserController(){
System.out.println("controller创建了");
}
@RequestMapping
public void test(){
System.out.println("controller:test方法执行了");
}
}
- index.jsp
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>cai jin hong</title>
<style>
</style></head>
<body>
<a href="userController.do">测试</a>
</body>
</html>
请求和响应流程:
- 当点击测试超链接时,浏览器向服务器发送userController.do的资源请求
- 服务器接收到之后,找到类上面带有@RequestMapping("userController.do")注解的对象
找到了之后,查找方法上面带有@RequestMapping("xxx")注解的方法
- 如果只有一个方法,可以不用写名字,直接写RequestMapping
- 如果有多个方法,需要注明方法名
- 找到了之后,执行方法,并将处理信息响应回给浏览器(该代码中没有返回值)
本篇文章只讲了一下最基本的时候,下一篇文章会详细的说的SpringMVC请求和响应的处理!!!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。