SpringBoot教程
SpringBoot入门案例
SpringBoot框架Web开发
SpringBoot非web应用程序
SpringBoot使用拦截器
SpringBoot中使用Servlet
SpringBoot中使用Filter
SpringBoot项目配置字符编码
SpringBoot打包与部署
SpringBoot使用Actuator
SpringBoot集成Thymeleaf模板
SpringBoot总结及综合案例
SpringBoot工程下使用Mybatis反向工程

SpringBoot使用JSP框架

项目名称:009-springboot-jsp

1. 在pom.xml文件中配置以下依赖项

<!--引入Spring Boot内嵌的Tomcat对JSP的解析包,不加解析不了jsp页面-->
<!--如果只是使用JSP页面,可以只添加该依赖-->
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
</dependency>

<!--如果要使用servlet必须添加该以下两个依赖-->
<!-- servlet依赖的jar包-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
</dependency>

<!-- jsp依赖jar包-->
<dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>javax.servlet.jsp-api</artifactId>
    <version>2.3.1</version>
</dependency>

<!--如果使用JSTL必须添加该依赖-->
<!--jstl标签依赖的jar包start-->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
</dependency>

2. 在pom.xml的build标签中要配置以下信息

SpringBoot要求jsp文件必须编译到指定的META-INF/resources目录下才能访问,否则访问不到。其实官方已经更建议使用模板技术(后面会讲模板技术)。

<!--
    SpringBoot要求jsp文件必须编译到指定的META-INF/resources目录下才能访问,否则访问不到。
    其它官方已经建议使用模版技术(后面会课程会单独讲解模版技术)
-->
<resources>
    <resource>
        <!--源文件位置-->
        <directory>src/main/webapp</directory>
        <!--指定编译到META-INF/resource,该目录不能随便写-->
        <targetPath>META-INF/resources</targetPath>
        <!--指定要把哪些文件编译进去,**表示webapp目录及子目录,*.*表示所有文件-->
        <includes>
            <include>**/*.*</include>
        </includes>
    </resource>
</resources>

3. 在application.properties文件配置Spring MVC的视图展示为jsp,这里相当于Spring MVC的配置

#配置SpringMVC的视图解析器
#其中:/相当于src/main/webapp目录
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.jsp

集成完毕之后,剩下的步骤和我们使用Spring MVC一样

4. 在com.sxbdqn.springboot.controller包下创建JspController类,并编写代码

/**
 * ClassName:SpringBootController
 * Package:com.sxbdqn.springboot.web
 * Description:

 */
@Controller
public class SpringBootController {

    @RequestMapping(value = "/springBoot/jsp")
    public String jsp(Model model) {

        model.addAttribute("data","SpringBoot 前端使用JSP页面!");

        return "index";
    }
}

5. 在src/main 下创建一个webapp目录,然后在该目录下新建index.jsp页面

如果在webapp目录下右键,没有创建jsp的选项,可以在Project Structure中指定webapp为Web Resource Directory

6. 在jsp中获取Controller传递过来的数据

7. 重新运行Application,通过浏览器访问测试