步骤1:视图支持
步骤2:先运行,看到效果,再学习
步骤3:模仿和排错
步骤4:基于前面的知识点
步骤5:pom.xml
步骤6:application.properties
步骤7:HelloController
步骤8:hello.jsp
步骤9:启动测试
步骤 1 : 视图支持
Springboot的默认视图支持是Thymeleaf,但是Thymeleaf 后面才讲,目前我们暂时不熟悉,我们熟悉的还是jsp。 所以本知识点讲解如何让Springboot支持 jsp。
相关:Thymeleaf 教程
步骤 2 : 先运行,看到效果,再学习
老规矩,先下载下载区(点击进入)的可运行项目,配置运行起来,确认可用之后,再学习做了哪些步骤以达到这样的效果。
测试地址是:
http: //127.0.0.1:8080/hello |
注: 启动方式是Springboot特有的,直接运行类:com.how2java.springboot.Application 的主方法。
![先运行,看到效果,再学习](https://img-blog.csdnimg.cn/img_convert/47e15a0baf0cc5a03346e2f75b166855.png)
步骤 3 : 模仿和排错
在确保可运行项目能够正确无误地运行之后,再严格照着教程的步骤,对代码模仿一遍。
模仿过程难免代码有出入,导致无法得到期望的运行结果,此时此刻通过比较正确答案 ( 可运行项目 ) 和自己的代码,来定位问题所在。
采用这种方式,学习有效果,排错有效率,可以较为明显地提升学习速度,跨过学习路上的各个槛。
推荐使用diffmerge软件,进行文件夹比较。把你自己做的项目文件夹,和我的可运行项目文件夹进行比较。
这个软件很牛逼的,可以知道文件夹里哪两个文件不对,并且很明显地标记出来
这里提供了绿色安装和使用教程:diffmerge 下载和使用教程
步骤 4 : 基于前面的知识点
本知识点在入门-Eclipse的基础上进行修改
步骤 5 : pom.xml
增加对JSP支持
<? xml version = "1.0" encoding = "UTF-8" ?> < project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion >4.0.0</ modelVersion > < groupId >com.how2java</ groupId > < artifactId >springboot</ artifactId > < version >0.0.1-SNAPSHOT</ version > < name >springboot</ name > < description >springboot</ description > < packaging >war</ packaging > < parent > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-parent</ artifactId > < version >1.5.9.RELEASE</ version > </ parent > < dependencies > < dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-web</ artifactId > </ dependency > < dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-tomcat</ artifactId > </ dependency > < dependency > < groupId >junit</ groupId > < artifactId >junit</ artifactId > < version >3.8.1</ version > < scope >test</ scope > </ dependency > <!-- servlet依赖. --> < dependency > < groupId >javax.servlet</ groupId > < artifactId >javax.servlet-api</ artifactId > </ dependency > < dependency > < groupId >javax.servlet</ groupId > < artifactId >jstl</ artifactId > </ dependency > <!-- tomcat的支持.--> < dependency > < groupId >org.apache.tomcat.embed</ groupId > < artifactId >tomcat-embed-jasper</ artifactId > </ dependency > </ dependencies > < properties > < java.version >1.8</ java.version > </ properties > < build > < plugins > < plugin > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-maven-plugin</ artifactId > </ plugin > </ plugins > </ build > </ project > |
步骤 6 : application.properties
在src/main/resources 目录下增加 application.properties文件,用于视图重定向jsp文件的位置
![application.properties](https://img-blog.csdnimg.cn/img_convert/1274d73873be4d0f4d405b4437f0e83a.png)
spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mvc.view.suffix=.jsp |
步骤 7 : HelloController
修改HelloController,把本来的@RestController 改为@Controller。
这时返回"hello"就不再是字符串,而是根据application.properties 中的视图重定向,到/WEB-INF/jsp目录下去寻找hello.jsp文件
package com.how2java.springboot.web; import java.text.DateFormat; import java.util.Date; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class HelloController { @RequestMapping ( "/hello" ) public String hello(Model m) { m.addAttribute( "now" , DateFormat.getDateTimeInstance().format( new Date())); return "hello" ; } } |
步骤 8 : hello.jsp
在main目录下,新建-> webapp/WEB-INF/jsp 目录。
随后新建hello.jsp 文件,在其中使用EL 表达式显示放在HelloController的model中的当前时间。
![hello.jsp](https://img-blog.csdnimg.cn/img_convert/977d0cfa1744c88e9410e4574a43e9f0.png)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Hi JSP. 现在时间是 ${now} |
步骤 9 : 启动测试
测试地址是:
http: //127.0.0.1:8080/hello |
![启动测试](https://img-blog.csdnimg.cn/img_convert/bd708d14678c51ff931347d961aaaff9.png)
更多内容,点击了解: https://how2j.cn/k/springboot/springboot-jsp/1647.html