目录
1.依赖
<packaging>war</packaging>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.6.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.0-b01</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2.1-b03</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.2</version>
</dependency>
</dependencies>
<build>
<plugins>
<!--tomcat插件-->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<!-- 通过maven tomcat7:run运行项目时,访问项目的端口号 -->
<port>8989</port>
<!-- 配置webapp的虚拟路径-->
<path>/myproject01</path>
</configuration>
</plugin>
</plugins>
</build>
2.配置tomcat服务器
1.pom.xml内配置tomcatPlugin的参数
2.创建webapp服务器容器
3.启动tomcat服务器
具体查看
(9条消息) Tomcat服务器_普鲁登斯的博客-CSDN博客https://blog.csdn.net/qq_46335546/article/details/130268281
3.配置springMVC
主要是配置MVC的三大核心组件
前端控制器 :用于拦截用户请求,并将请求交给请求处理器去处理
请求处理器 :用于处理用户请求,具体怎么处理由开发者在指定注解下的方法内写明。
视图解析器 :用于配置服务器响应的规则,拼接响应文件的路径。
1.在webapp内的web.xml中配置springmvc的前端控制器
<?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>springmvc01</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<!-- 让web项目加载springmvc的配置文件 -->
<param-value>classpath:springmvc-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 前端控制器的映射配置-->
<servlet-mapping>
<servlet-name>springmvc01</servlet-name>
<!-- 前端控制器所拦截的请求 /表示所有-->
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
2.创建resources文件夹下创建springmvc-config.xml文件,配置mvc的请求处理器和视图解析器
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 基于注解驱动 json的@RequestBody就得这个-->
<mvc:annotation-driven/>
<!-- 扫描指定包下的请求处理器-->
<context:component-scan base-package="org.example.requestHandler"/>
<!-- 配置视图解析器-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
4.使用springMVC
【常用注解】
注解 | 作用 |
@Controller | 放到类上:设置当前类为请求处理器 |
@RequestMapping("/login") | 放到类上:为当前类下所有的@RequestMapping设置目录 放在方法上:设置当前方法为请求映射 |
@ResponseBody | 放在方法上:设置当前请求返回字符串。不返回视图 |
@RequestParam("参数名词") | 放在参数前:设置自定义参数映射 |
@RequestBody | 放在参数前:设置当前参数为json数据绑定,需要json依赖和mav配置中开启 <mvc:annotation-driven/> |
【常用参数】:可以直接使用在处理方法上
注解 | 作用 |
【基本数据类型/pojo类】 | mvc自动进行参数绑定 |
HttpSession | 服务端缓存对象,用于存放客户端令牌信息 |
HttpServletRequest | 请求信息对象,包括Cookie,请求类型,请求头.... |
HttpServletResponse | 请求信息对象,包括Cookie,请求类型,请求头.... |