springboot内部对jsp的支持并不是特别理想,而springboot推荐的视图是Thymeleaf,对于java开发人员来说还是大多数人员喜欢使用jsp,接下来我们来讲解下springboot是如何支持jsp的。
本章目标
整合springboot web项目支持jsp作为视图输出。
本章重点
SpringBoot和jsp之间的关系
一、配置SpringBoot对jsp的支持
我们打开pom.xml(maven配置文件)可以看到我们之前构建项目时已经添加了web模块,而springboot 给我们自动添加了spring-boot-starter-tomcat配置引入。springboot内部集成了tomcat组件,这里我们就不需要重复引入tomcat组件
JSP 支持的jar
我们先来添加jsp的maven支持,如下图1所示:
接下来我们还需要引入jsp对servlet容器的支持,如下图2所示:
另外我们jsp需要引入jstl标签,也就是我们之前springmvc一直引用的C标签,如图三所示:
但是我们现在还没有配置,创建JSP文件,我们接下来开始配置,创建JSP。
配置视图
基本配置
我们这里是eclipse工具 ,用过的人肯定知道jsp文件之前是在/webapp/WEB-INF/pages目录下
1. 在main目录下创建webapp文件夹
2. 在webapp下创建jsp文件夹,我一般喜欢用pages,我们创建了index.jsp,所以如下图4所示:
3. 在src/main/resources/创建application.properties文件 ,让springmvc支持视图的跳转目录指向为/main/webapp/pages,配置如下图5所示:
接下来我们来配置对jsp的支持,如图六所示:
最后我们所有的操作都弄好,只差最后一步,那就是创建Controller
创建IndexController
上面工作我们已经完成了jsp的所有配置,那么接下来我们需要配置springmvc的控制器,我们新建IndexController如下图7所示:
可以看到上图我们在IndexController配置文件内添加了index()方法配置了@RequestMapping注解来描述index()方法是一个可以被springmvc管理的请求视图。我们的index()方法返回值这里是"index"。
为什么我们返回"index",还记得上述步骤中配置的application.properties文件的springmvc请求前缀以及后缀,那么当我们访问/index/index时springmvc就会去找/webapp/WEB-INF/pages/index.jsp文件。
启动项目
重启项目我们尝试访问http://localhost:8080/index/index,可以看到如下图八的效果,证明已经完成了springboot与jsp的整合
总结
我们本章的全部内容,本章主要是讲解了springboot集成jsp作为视图,结合springmvc来转发请求。