-
下面以一个简单的demo呈现Spring boot 访问html
-
代码结构如下所示:
-
直接上代码:
-
pom.xml文件
<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>SpringBWebDemo</groupId>
<artifactId>SpringBWebDemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.4.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-thymeleaf</artifactId>
</dependency>
</dependencies>
</project>
- 启动类
package com;
import org.jboss.logging.Logger;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author YeChunBo
* @time 2017年10月17日
*
* 类说明
*/
@SpringBootApplication
@RestController
public class Main implements EmbeddedServletContainerCustomizer{
private static Logger log = Logger.getLogger(Main.class);
@RequestMapping("/")
public String getHello() {
log.info("Hello Spring Boot .....启动项目成功");
return "Hello Spring Boot .....启动项目成功";
}
// 修改访问的默认端口
public void customize(ConfigurableEmbeddedServletContainer configurableEmbeddedServletContainer) {
configurableEmbeddedServletContainer.setPort(1234);
}
@RequestMapping("/test")
public void handleView(HttpServletResponse response) throws IOException {
response.sendRedirect("https://mp.csdn.net/mdeditor/78409285#"); // 重定向到指定页面
}
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
}
- 控制层类
package com.controller;
/**
* @author YeChunBo
* @time 2017年10月18日
*
* 类说明
*/
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;
@Controller
public class TemplatesController {
@GetMapping("/templates")
String test(HttpServletRequest request) {
//逻辑处理
request.setAttribute("key", "hello world");
return "index";
}
@GetMapping("/test2")
String test2(HttpServletRequest request) {
//逻辑处理
request.setAttribute("key", "hehe.....");
return "test2";
}
}
- static中的静态welcome.html
<!DOCTYPE html>
<html>
<body>
Hello, Spring boot !!!!!!!!!!!!!!!!!
</body>
</html>
- templates 中的html
<!DOCTYPE html>
<html>
<span th:text="${key}"></span>
</html>
- 验证运行情况
启动Main类,Spring boot 会根据注解加载相应的页面等
在浏览器中访问:http://localhost:1234/test2
- 总结
: spring boot 访问html 需要加载 spring-boot-starter-thymeleaf
: 需要访问的静态html,默认是存放在resource目录下的static目录下
: 需要访问的动态html,默认是存在在resource目录下的templates
: 在hmtl中获取后台传参时一般采用 th:xxx = “${xx}” 的方式,eg: th:text="${key}"