接SpringBoot 快速入门(Eclipse);
步骤一:视图支持
Springboot的默认视图支持是Thymeleaf,但是Thymeleaf我们不熟悉,我们熟悉的还是jsp。 所以下面是讲解如何让Springboot支持 jsp。
Thymeleaf 是一种Java XML/XHTML/HTML 5 的网站模版系统。(后面文章会介绍)
步骤二:基于前面的springBoot入门小demo
该知识点在《SpringBoot快速入门(Eclipse)》的基础上进行修改的 。
步骤三:修改pom.xml文件,添加对jsp支持
4.0.0
cn.xdf
springbootTest
0.0.1-SNAPSHOT
springboot
springboot
war
org.springframework.boot
spring-boot-starter-parent
1.5.9.RELEASE
org.springframework.boot
spring-boot-starter-web
junit
junit
test
org.springframework.boot
spring-boot-starter-tomcat
provided
javax.servlet
javax.servlet-api
javax.servlet
jstl
org.apache.tomcat.embed
tomcat-embed-jasper
1.8
org.springframework.boot
spring-boot-maven-plugin
org.apache.maven.plugins
maven-jar-plugin
即下面这部分(jsp本身就是一个servlet,运行于服务器端,所以添加以下这两部分依赖和支持):
javax.servlet
javax.servlet-api
javax.servlet
jstl
org.apache.tomcat.embed
tomcat-embed-jasper
步骤四:添加application.properties配置文件
在src目录下增加application.properties文件,用于视图重定向jsp文件的位置。
注意:jsp后面的“/”别忘了 !
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
步骤五:修改HelloController类
修改HelloController,把本来的@RestController 改为@Controller。
这时返回"hello"就不再是字符串,而是根据application.properties 中的视图重定向,到/WEB-INF/jsp目录下去寻找hello.jsp文件
packagecn.xdf.springboot.web;importjava.text.DateFormat;importjava.util.Date;importorg.springframework.stereotype.Controller;importorg.springframework.ui.Model;importorg.springframework.web.bind.annotation.RequestMapping;
@Controllerpublic classHelloController {
@RequestMapping("/hello")publicString hello(Model m){
m.addAttribute("now",DateFormat.getDateTimeInstance().format(newDate()));return "hello"; //视图重定向hello.jsp
}
}
步骤六:创建hello.jsp文件
在main目录下,新建--> webapp/WEB-INF/jsp 目录。
随后新建hello.jsp 文件,在其中使用EL 表达式显示放在HelloController的model中的当前时间。
步骤七:启动测试
测试地址是:http://127.0.0.1:8080/hello