springboot内嵌tomcat集成jsp的jar版本
版本:
jdk 1.8
maven 3.5
springBoot 1.5.6.RELEASE
使用springBoot搭建好项目之后发现jsp怎么访问都是下载文件,然后添加tomcat-embed-jasper依赖、javax.servlet.jsp-api依赖、jstl依赖、javax.servlet-api依赖。发现maven Reimport之后仍然无法访问jsp页面
最后发现由于springBoot 1.5.6.RELEASE对应的tomcat-embed-jasper依赖版本问题不能引入进来。尝试使用不同的几个9版本、7版本都不能引入成功。最后引入成功的依赖是:
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>8.5.16</version>
</dependency>
引入之后,就可以正常访问jsp页面了。
application.properties
server.port=8888
#server.context-path=/app
#页面默认前缀目录
spring.mvc.view.prefix=/WEB-INF/jsp/
#页面默认后缀目录
spring.mvc.view.suffix=.jsp
#关闭默认模板引擎
spring.thymeleaf.cache=false
spring.thymeleaf.enabled=false
#修改jsp页面立即生效
server.jsp-servlet.init-parameters.development=true
项目结构
完整的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>coderfun</groupId>
<artifactId>fieldmeta</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>fieldmeta</name>
<url>http://coderfun.org/bom</url>
<properties>
<java.version>1.8</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<mysql-connector-java.version>5.1.36</mysql-connector-java.version>
<jackson-databind.version>2.7.0</jackson-databind.version>
<commons-dbutils.version>1.6</commons-dbutils.version>
<jsoup.version>1.10.2</jsoup.version>
</properties>
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>