JSON是目前主流的前后端数据传输方式,SpringMVC中使用消息转换器HttpMessageConverter对JSON的转换提供了很好的支持,在SpringBoot中更进一步,对相关配置做了更进一步的简化。默认情况下,当开发者新创建一个SpringBoot项目后,添加Web依赖,代码如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
创建BookJson实体类:
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import java.util.Date;
public class BookJson {
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;
}
}
然后创建BookJsonController,返回bookjson对象即可:
import com.sang.enity.BookJson;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
@RestController //@RestController = @Controller + @ResponseBody
public class BookJsonController {
@RequestMapping("/books")
public BookJson books() {
BookJson booksjson = new BookJson();
booksjson.setAuthor("李玉");
booksjson.setName("自学springboot");
booksjson.setPrice(30f);
booksjson.setPublicationDate(new Date());
return booksjson;
}
}
然后在浏览器中进行访问:
JSON处理器可以使用一些开源JSON解析框架,我使用的是默认的