這個問題我掉坑里好久,通過啟動類啟動項目,訪問接口正常,訪問jsp就是不行。百度了一些方法也沒有解決,最后通過命令mvn spring-boot:run啟動后訪問就正常了。
1,pom文件配置,避免一些坑,我就都引了
<!--jsp支持-->
<!-- servlet 依賴. -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope><!-- 打包時排除springboot內置Tomcat -->
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<!--<scope>provided</scope>-->
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<!--<scope>provided</scope>-->
</dependency>
<!-- tomcat 的支持.-->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<!--<scope>provided</scope>-->
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<!--<scope>provided</scope>-->
</dependency>
<!-- 視圖解析 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
<!--<scope>provided</scope>--><!-- 作用域,provided的意思是打包成war包的時候忽略這幾個包,因為tomcat會跟這幾個包沖突-->
然后在plugins標簽里加入,解決控制打印中文亂碼
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!-- spring-boot:run 中文亂碼解決 -->
<configuration>
<fork>false</fork><!-- 這里設置為true,就有端口占用問題,設置為false,熱部署又有問題,太難了 -->
<!--增加jvm參數-->
<jvmArguments>-Dfile.encoding=UTF-8</jvmArguments>
</configuration>
</plugin>
2,application.yml配置文件
#jsp支持 spring: mvc: view: prefix: /view/ suffix: .jsp
3,點擊idea左邊的 maven projects,找到spring-boot:run ,右鍵點擊啟動,


