个人springboot学习之springboot支持jsp做为视图输出

配置springboot支持jsp

小可爱打开pom.xml(maven配置文件),能够看到咱们以前构建项目时已经添加了web模块,html

而springboot给咱们自动添加了spring-boot-starter-tomcat配置引入,java

so 如今小可爱只须要再加这几个依赖web

JSP mavenspring

<dependency>
                <groupId>org.apache.tomcat.embed</groupId>
                <artifactId>tomcat-embed-jasper</artifactId>
 </dependency>

Servlet mavenapache

<dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
 </dependency>

JSTL mavenapi

<dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>jstl</artifactId>
 </dependency>

 

 

小可爱添加完依赖以后,能够尝试一下项目是否能正常运行,浏览器

正常运行以后,小可爱就能够加jsp咯...tomcat

配置视图

基本配置springboot

由于小可爱之前用的是myeclipse,如今小可爱用idea了,mvc

可是之前小可爱的jsp文件以前是在/webapp/WEB-INF目录下

so 小可爱也这样在idea中建立jsp页面


1. 在main目录下建立webapp文件夹

2. 在webapp目录下建立WEB-INF文件夹

3.在WEB-INF目录下建立view文件夹

 

修改配置文件

修改application.properties文件,加一个springmvc的视图解析器

让springmvc支持视图的跳转目录指向为/main/webapp/WEB-INF/view

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

 

小可爱写好了视图解析器,确定是想测试一下咱们的配置对不对吧...

这个时候该怎么作呢?对,就是建立jsp!

 

建立index.jsp

小可爱这个时候呢,就要在/main/webapp/WEB-INF/view目录下建立一个index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
this is index jsp page.
</body>
</html>

 

建立好jsp,固然少不了控制器啦,这个时候到关键的一步

新建indexController

 

代码以下所示:

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;


@Controller
public class HelloWorldController {
    /**
     * 访问index.jsp文件
     * @return
     */
    @RequestMapping(value = "/index",method = RequestMethod.GET)
    public String index(){
        return "index";
    }
}

 

这个时候到了万众瞩目的一步啦,哈哈哈...

在小可爱的浏览器输入:http://127.0.0.1:8080/index

 

噔噔噔,完成了,是否是颇有成就感?

哈哈哈,小可爱们...

 

小可爱偷偷告诉大家几个秘密哦,别说出去哦...

(1)Controller这里,记得是用这个注解 @Controller

不是这个@RestController 

否则的话,就会像下图所示:

这个输出告诉咱们,并无把小可爱写的jsp页面做为输出哦~

 

(2)为何小可爱的Controller返回的是"index"

由于application.properties里,小可爱配置了springmvc请求前缀以及后缀,

当小可爱们访问/index时springmvc就会去找/webapp/WEB-INF/view/index.jsp文件了,

是否是很神奇,是否是很棒棒哦,哈哈哈...