JSON 是目前主流的前后端数据传输方式。在 Spring Boot 项目中,只要添加了 Web 依赖(spring-boot-starter-web),就可以很方便地实现 JSON 转换。下面我们通过样例进行演示。
Web 依赖默认加入了 jackson-databind 作为 JSON 处理器,我们不需要要添加额外的 JSON 处理器就可以返回一段 JSON。
1,实体类创建
首先我们创建一个 Book 实体类,注意这里用到了两个注解:
@JsonIgnore:json 序列化时将 java bean 中的一些属性忽略掉。即生成 json 时不生成其标注的属性。
@JsonFormat:将日期类型的数据格式化成指定格式的字符串。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | package com.example.demo; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import java.util.Date; public class Book { private String name; private String author; @JsonIgnore private Float price; @JsonFormat (pattern = "yyyy-MM-dd" ) private Date publicationDate; public String getName() { return name; } public void setName(String name) { this .name = name; } public String getAuthor() { return author; } public void setAuthor(String author) { this .author = author; } public Float getPrice() { return price; } public void setPrice(Float price) { this .price = price; } public Date getPublicationDate() { return publicationDate; } public void setPublicationDate(Date publicationDate) { this .publicationDate = publicationDate; } } |
2,创建 Contoller
在这个 Contoller 中我们初始化一个 Book 对象,然后将其直接返回。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | package com.example.demo; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.GetMapping; import java.util.Date; @RestController public class HelloController { @GetMapping ( "/hello" ) public Book hello() { Book book = new Book(); book.setName( "Spring Boot开发指南" ); book.setAuthor( "hangge" ); book.setPrice(50f); book.setPublicationDate( new Date()); return book; } } |
3,访问测试
在浏览器访问 /hello 这个接口,可以看到 JSON 数据已经成功返回了。
原文出自:www.hangge.com 转载请保留原文链接:https://www.hangge.com/blog/cache/detail_2460.html