SpringBoot2 零基础到精通之数据与页面响应
SpringBoot是一款快速开发框架,它的特点在于能够自动配置和约定大于配置。通过本文,你将学会:
- 在SpringBoot项目中,利用控制器将数据响应到页面上;
- 配置模板引擎,在页面上渲染动态数据;
- 将数据响应成Json,供前端异步获取。
1. 添加依赖
在你的SpringBoot项目的pom.xml文件中添加依赖:
<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>
2. 编写控制器
在src/main/java目录下建立一个名为com.example.demo的包,在这个包下新建一个名为HomeController的Java类:
package com.example.demo;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class HomeController {
@GetMapping("/")
public String index(Model model) {
model.addAttribute("message", "Hello, World!");
return "index";
}
}
3. 编写模板
在src/main/resources/templates目录下,建立一个名为index.html的文件,并编写以下内容:
<!DOCTYPE html>
<html>
<head>
<title>SpringBoot2零基础到精通</title>
</head>
<body>
<h1 th:text="${message}"></h1>
</body>
</html>
4. 运行程序
现在你可以运行SpringBoot项目,并在浏览器中访问http://localhost:8080。你将看到一个页面,上面打印了“Hello, World!”。
5. 发送Json响应
下面是一个关于如何发送Json响应的示例。在HomeController类中添加下列代码,以使用SpringBoot内置的Jackson库将一个对象解析成JSON字符串,并且返回HTTP响应:
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HomeController {
// ...略去...
@PostMapping("/api")
@ResponseBody
public Product createProduct(@RequestBody Product product) {
// 进行一些操作,然后返回操作后的Product对象,SpringBoot默认使用Jackson库,将对象转换成为Json字符串
return product;
}
}
public class Product {
private String name;
private String description;
// 将略去setter和getter方法
}
现在你可以通过POST方法,发送请求到/api,SpringBoot会将Product解析成json,并返回到响应中。
6. 结束语
以上是SpringBoot2零基础到精通的一部分内容。除此之外,当然还有许多其他的值得学习的知识,例如SpringBoot的自动配置,读取配置文件等等。通过自己实践和不断学习,相信你将能够掌握这个框架,变成一个合格的SpringBoot程序员。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot2零基础到精通之数据与页面响应 - Python技术站