Spring Boot访问根路径仅返回字符串无法加载index.jsp页面怎么办?
问题根因
@RestController注解是@Controller与@ResponseBody的组合注解,被该注解修饰的类下所有方法的返回值会直接写入HTTP响应体,不会触发视图解析器拼接前后缀跳转页面,因此你返回的"index"会直接作为纯字符串返回给前端。
解决步骤
- 替换控制器注解:将类上的
@RestController改为@Controller,修改后代码如下:
@Controller public class IMEIController { @Autowired private IValidateIMEI iValidateIMEI; @GetMapping("/") public String home() { return "index"; } }
- 检查jsp相关依赖:确认Maven的pom.xml或Gradle的build.gradle中已引入jsp解析依赖,Maven依赖配置参考如下:
<dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency>
- 校验文件路径:确认index.jsp文件存放路径为
src/main/webapp/WEB-INF/jsp/index.jsp,与你配置的spring.mvc.view.prefix路径完全匹配。 - 重启项目验证即可正常跳转jsp页面。
内容的提问来源于stack exchange,提问作者Samanyu Mehra
相关产品推荐
相关产品推荐

