springboot项目访问jsp页面报404

系统管理员 2022-02-25 09:06 577阅读 0赞
  1. <modelVersion>4.0.0</modelVersion>
  2. <groupId>com.项目名</groupId>
  3. <artifactId>statisticalvisits</artifactId>
  4. <version>0.0.1-SNAPSHOT</version>
  5. <packaging>jar</packaging>
  6. <!--<packaging>war</packaging> 如果需要打包在tomcat中运行 可替换为war包,mvn打包会根据此处来执行 -->
  7. <name>statisticalvisits</name>
  8. <description>Demo project for Spring Boot</description>
  9. <parent>
  10. <groupId>org.springframework.boot</groupId>
  11. <artifactId>spring-boot-starter-parent</artifactId>
  12. <!-- 此处网上有很多博客说如果使用jsp页面,就必须使用springboot-1.4.2版本,但是我使用的时候用的2.0.6没有问题,反而用1.4.x会出问题,如果你有问题可以考虑换位1.4.2的试试 -->
  13. <!--<version>1.4.2.RELEASE</version> -->
  14. <version>2.0.6.RELEASE</version>
  15. <relativePath/> <!-- lookup parent from repository -->
  16. </parent>
  17. <properties>
  18. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  19. <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  20. <java.version>1.8</java.version>
  21. </properties>
  22. <dependencies>
  23. <dependency>
  24. <groupId>org.springframework.boot</groupId>
  25. <artifactId>spring-boot-starter-web</artifactId>
  26. </dependency>
  27. <dependency>
  28. <groupId>org.mybatis.spring.boot</groupId>
  29. <artifactId>mybatis-spring-boot-starter</artifactId>
  30. <version>1.3.1</version>
  31. </dependency>
  32. <dependency>
  33. <groupId>org.springframework.boot</groupId>
  34. <artifactId>spring-boot-starter-test</artifactId>
  35. <scope>test</scope>
  36. </dependency>
  37. <!-- mysql jar包依赖 -->
  38. <dependency>
  39. <groupId>mysql</groupId>
  40. <artifactId>mysql-connector-java</artifactId>
  41. </dependency>
  42. <dependency>
  43. <groupId>org.springframework.boot</groupId>
  44. <artifactId>spring-boot-starter-freemarker</artifactId>
  45. </dependency>
  46. <dependency>
  47. <groupId>c3p0</groupId>
  48. <artifactId>c3p0</artifactId>
  49. <version>0.9.1.1</version>
  50. </dependency>
  51. <dependency>
  52. <groupId>javax.servlet</groupId>
  53. <artifactId>javax.servlet-api</artifactId>
  54. </dependency>
  55. <dependency>
  56. <groupId>javax.servlet</groupId>
  57. <artifactId>jstl</artifactId>
  58. </dependency>
  59. <dependency>
  60. <groupId>org.springframework.boot</groupId>
  61. <artifactId>spring-boot-starter-tomcat</artifactId>
  62. </dependency>
  63. <!-- 使用jsp页面模板,必须有这个依赖 ,版本号可自行在mvn仓库选择-->
  64. <dependency>
  65. <groupId>org.apache.tomcat.embed</groupId>
  66. <artifactId>tomcat-embed-jasper</artifactId>
  67. <version>8.5.34</version>
  68. </dependency>
  69. </dependencies>
  70. <build>
  71. <!-- 如果使用打war包,包名可根据此处更改为你想要的项目名,不然放到tomcat运行后项目名可能不是这个 -->
  72. <!--<finalName>visitCount</finalName>-->
  73. <plugins>
  74. <plugin>
  75. <!-- maven插件 -->
  76. <groupId>org.springframework.boot</groupId>
  77. <artifactId>spring-boot-maven-plugin</artifactId>
  78. <version>1.4.2.RELEASE</version>
  79. </plugin>
  80. <plugin>
  81. <groupId>org.apache.maven.plugins</groupId>
  82. <artifactId>maven-resources-plugin</artifactId>
  83. <configuration>
  84. <encoding>UTF-8</encoding>
  85. <useDefaultDelimiters>true</useDefaultDelimiters>
  86. </configuration>
  87. </plugin>
  88. </plugins>
  89. <resources>
  90. <!-- 此处最为重要-否则打包后没有你的JSP页面模板,一定要记得写为资源文件 targetPath 设置必须是 META-INF/resources
  91. 我项目做出来的时候因为没写resources导致打包运行后正常启动,各个接口也都正常访问,但是所有的jsp页面都会报404,找不到页面 ,因为这个问题浪费了我大半天时间-->
  92. <resource>
  93. <directory>src/main/webapp</directory>
  94. <targetPath>META-INF/resources</targetPath>
  95. <includes>
  96. <include>**/**</include>
  97. </includes>
  98. </resource>
  99. <resource>
  100. <directory>src/main/resources</directory>
  101. <filtering>true</filtering>
  102. </resource>
  103. </resources>
  104. <testResources>
  105. <testResource>
  106. <directory>src/test/resource</directory>
  107. <filtering>true</filtering>
  108. </testResource>
  109. </testResources>
  110. </build>

pom中一定要记得写为资源文件 ** 设置必须是 META-INF/resources 否则打包后你的JSP页面模板在项目中的位置不对,springboot就无法定位到你的页面,我项目做出来的时候因为没写resources导致打包运行后正常启动,各个接口也都正常访问,但是所有的jsp页面都会报404,找不到页面 **

然后jsp页面对应的springmvc的模板前缀后缀
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.jsp

发表评论

表情:
评论列表 (有 0 条评论,577人围观)

还没有评论,来说两句吧...

相关阅读