码农的世界互联网科技程序员

Spring boot学习 (六) 之响应jsp页面

2018-11-23  本文已影响14人  xml_

前言

spring-boot 支持多种模版引擎包括:

正文

pom.xml中添加依赖
 <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
 </dependency>
 <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>

application.properies中加入如下配置,指定jsp页面的目录和后缀
#配置要获取的信息
com.mlin.hello=hello,mlin
# 页面默认前缀目录
spring.mvc.view.prefix=/WEB-INF/jsp/
# 响应页面默认后缀
spring.mvc.view.suffix=.jsp
新建文件UserController.java,添加如下代码:
@Controller
public class UserController {

    @Value("${com.mlin.hello}")
    private  String hello; //获取配置文件的信息:mlin,hello

    @RequestMapping("/index")
    public ModelAndView index(){
        // 默认会去寻找配置文件配置的 spring.view.prefix 目录下的页面
        // 即/WEB-INF/jsp/index.jsp
        ModelAndView modelAndView = new ModelAndView("index");
        modelAndView.addObject("msg",this.hello);
        return modelAndView;
    }
}
src/main 下面创建 webapp/WEB-INF/jsp 目录存放jsp页面,新建index.jsp
<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <title>Spring Boot jsp Sample</title>
</head>
<body>
    Message: ${msg}
</body>
</html>
pom.xml文件中的jar改成war,这样才可以支持jsp
<packaging>war</packaging>
启动服务,浏览器输入:http://localhost:8080/index
1.png

总结

在实践过程中发现如下问题

当引入的依赖tomcat-embed-jasper指定范围是provide的时候,右键启动类一直报404找不到页面错误,不指定则运行正常。寻找资料发现前辈们的总结如下:

指定provided时:
不指定provided时

原创作者:梦凌小样
作品链接:https://www.jianshu.com/p/891c3e401e2f【原创不易,转载请注明出处,感谢理解】
一位爱生活,爱创作,爱分享,爱自己的90后女程序员一枚,记录工作中的点点滴滴,一起学习,共同进步,期待能和优秀的您交上朋友

上一篇 下一篇

猜你喜欢

热点阅读