Spring Boot学习之旅:(十一)模版引擎-jsp


spring 官方不推荐使用jsp原因如下
1. jsp只能打包为:war格式,不支持jar格式,只能在标准的容器里面跑(tomcat,jetty都可以)
2. 内嵌的Jetty目前不支持JSPs
3. Undertow不支持jsps
4. jsp自定义错误页面不能覆盖spring boot 默认的错误页面
5. 许多功能jsp 无法实现
但是之前用的都是jsp 处于使用对jsp使用习惯还是将介绍一下springboot 使用jsp
要使用jsp 不能使用之前jar 打包的方式。在创建maven 工程的时候选择 war包。
导入相应的jar

    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </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>

如果servlet 版本 2.5 以上可以使用 如下配置 将springboot配置成war的模式

public class ServletInitializer extends SpringBootServletInitializer {
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(App.class);
    }
}

如果servlet 版本 2.5 以下需要用web.xml 配置
在application.peoperties 中配置视图解析器

spring.mvc.view.prefix= /WEB-INF/jsp/
spring.mvc.view.suffix= .jsp

controller

@Controller
@RequestMapping(value = "/web")
public class WebController {
    @RequestMapping(value = "/index")
    public String index(ModelMap map) {
        map.put("title", "jsp  ");
        return "index";
    }
}

jsp

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<!DOCTYPE html>
<html>
<head lang="en">
    <title>Spring Boot Demo - jsp</title>   
</head>
<body>
        Spring Boot Demo - jsp
</body>
</html>

启动工程即可
文章地址:http://www.haha174.top/article/details/255911
推荐一篇文章:http://mp.weixin.qq.com/s/SLaIcVp2EOwz5996oJZrHw
项目源码:https://github.com/haha174/boot.git

欢迎关注,更多福利

这里写图片描述

发表评论

邮箱地址不会被公开。 必填项已用*标注

昵称 *