JSON是目前主流的前后端数据传输方式,在SpringBoot中对其相关配置做了进一步的简化。
一、SpringBoot自带的JSON转换器
在SpringBoot中添加web依赖
<dependency>
<groupId>org.springframework.boot<groupId>
<artifactId>spring-boot-starter-web<artifactId>
</dependency>
这个依赖默认加入了jackson-databind作为JSON处理器,不需要添加额外的JSON处理器即可返回一段JSON数据了。
示例:
(1)创建一个Book实体类
public class Book {
private String name;
private String author;
@JsonIgnore // 当实体类转为json数据时忽略该字段
private Float price;
@JsonFormat(pattern = "yyyy-MM-dd") // Json格式化日期
private Date publicationDate;
}
(2)创建BookController,返回Book对象
@Controller
public class BookController{
@getMapping("/book")
@ResponseBody
public Book book(){
Book book = new Book();
book.setName("三国");
book.setAuthor("罗贯中");
book.setPrice("35.6");
book.setPublicationDate(new Date());
return book;
}
}
@ReponseBody : 将该方法返回的数据转为json数据传递给浏览器(前端)
@RestController:@Controller + @ResponseBody,如果该类中所有的方法返回的结果都是要传递给前端的数据,那么可以直接将@Controller和@ResponseBody作为一个组合注解。
(3)在浏览器输入http://localhost:8080/book
可以看到返回了Json数据