“这是我参与8月更文挑战的第4天,活动详情查看:8月更文挑战” 默认实现 JSON是目前主流的前后端数据传输方式,在以前的SpringMVC中使用消息转换器HTTPMessageConverter对JSON的转换提供了很好的支持,在SpringBoot中进行了简化,在默认情况下,创建一个新的Springboot项目后,添加WEB的启依赖 代码如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
依赖中默认加入了Jackson-databind作为JSON处理器,此时不需要二外添加JSON处理器就能返回json了再举个栗子 创建一个实体类.
public class Book {
private String bookName;
@JsonIgnore
private Double price;
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public Double getPrice() {
return price;
}
public void setPrice(Double price) {
this.price = price;
}}
然后创建Controller
@RestController
public class BookController {
@GetMapping("/book")//一定要双引号
public Book book(){
Book book= new Book();
book.setBookName("蜜雪冰城甜蜜蜜");
book.setPrice(100d);//因为咱们设置了double类型所以末尾要写个D
return book;
}
}
好的现在重启项目,打开网页 https://localhost/8081/demo/book 上图:
此时你可能会好奇,设置了两个属性,怎么只显示一个属性呢
这是因为在bookpojo中加了一个注解@JsonIgnore 它的意思是忽略
如果注释掉我们可以看到图:
这样咱们就看到了Springboot的自带的Json处理方式,如果采用这种方式对于字段忽略,日期格式化等等需求都可以通过注解来实现.
除此之外还可以自定义转换器 比如Google的Gson,如果使用的话,要在pom文件中排除默认的JSON转换器,然后加入Gson依赖.
fastjson是阿里巴巴的一个开源json解析框架,据说是目前json解析最快的开源框架该框架也可以集成到Springboot中,但是不同于前两个的是 fastjson添加依赖后并不能立刻使用,需要相应的HttpmassageConverter后才能使用.
好的结束记录,加油,好好工作,每天都充满了希望.