springboot整合springmvc、jdbc
文章目录
前言
springboot是spring快速开发脚手架,通过约定大于配置的方式,快速构建和启动spring项目
Springboot的特点?
- Spring Boot是快速开发spring应用的框架,基于注解的零配置思想
- 内嵌tomcat和jetty容器,不需要单独安装容器,jar包直接发布一个web应用
- 简化maven配置,parent这种方式,一站式引入需要的各种依赖
- 和各种流行框架,spring web mvc,mybatis,spring cloud无缝整合
一、准备环节
1. 添加父工程坐标
SpringBoot提供了一个名为spring-boot-starter-parent的构件,里面已经对各种常用依赖(并非全部)的版本进行了管理,我们的项目需要以这个项目为父工程,这样我们就不用操心依赖的版本问题了,需要什么依赖,直接引入坐标即可!
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>
2. 添加web启动器
为了让SpringBoot帮我们完成各种自动配置,我们必须引入SpringBoot提供的自动配置依赖,我们称为 启动器 。因为我们是web项目,这里我们引入web启动器:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
需要注意的是,我们并没有在这里指定版本信息。因为SpringBoot的父工程已经对版本进行了管理了。下面所有提到的依赖导入也是同理。
3. 添加测试依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
二、SpringBoot整合SpringMVC
1. 修改端口
配置文件如果是在resources文件夹下创建application.properties:
# 映射端口
server.port=80
配置文件如果是在resources文件夹下创建application.yml:
server:
port: 8080
2. 访问静态资源
ResourceProperties的类,里面就定义了静态资源的默认查找路径::
所以默认的静态资源路径为:
- classpath:/META-INF/resources/
- classpath:/resources/
- classpath:/static/
- classpath:/public
只要静态资源放在这些目录中任何一个,SpringMVC都会帮我们处理。
3. 添加拦截器
首先我们定义一个拦截器:
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
System.out.println("处理器执行前执行!");
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) {
System.out.println