zl程序教程

您现在的位置是:首页 >  后端

当前栏目

spring boot 返回 JSON 数据详解编程语言

2023-06-13 09:11:49 时间
  groupId org.springframework.boot /groupId   artifactId spring-boot-starter-parent /artifactId   version 2.0.4.RELEASE /version /parent !--包含所有 JSON 处理的包-- dependency   groupId org.springframework.boot /groupId   artifactId spring-boot-starter-web /artifactId /dependency

2.定义返回方式

在 Controller 类上面用 @RestController 定义或者在方法上面用 @ResponseBody 定义,表明是在 Body 区域输出数据

@RestController 

public class UserTest { 

 @GetMapping(value = "/user/{userId}") 

 public User getUserInfo(@PathVariable("userId") String userId) { 

 User user = new User("lisi", 18); 

 user.setId(Long.valueOf(userId)); 

 return user; 

 } 

}

3.自定义输出格式

自定义 XML 格式

[email protected]:用来自定义属性标签名称;

       @JsonIgnore:   用来忽略不想输出某个属性的标签;

       @JsonInclude: 用来动态包含属性的标签,如可以不包含为 null 值的属性

public class User { 

 @JsonProperty("user-name") 

 private String userName; 

 private Long id; 

 private Integer age; 

 @JsonIgnore 

 private String address; 

 @JsonInclude(JsonInclude.Include.NON_NULL) 

 private String memo; 

 // ... get set  

}

4.完成对象 和 Json 的互转

jackson-databind 包里面有一个 com.fasterxml.jackson.databind.ObjectMapper 类可以完成对象和 Json 数据的互转

ObjectMapper objectMapper = new ObjectMapper(); 

String userJsonStr = objectMapper.writeValueAsString(user); 

user = objectMapper.readValue(userJsonStr, User.class);
自定义输出格式

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/18564.html

cjavamacxml