如何构造含Java枚举的列表JSON?用于Postman请求控制器
如何构造包含枚举类列表的请求JSON结构
嘿,这个问题其实挺常见的,我来帮你搞清楚怎么构造对应的JSON~
首先看你给出的ReservationState枚举,默认情况下(比如用Jackson作为JSON序列化框架,这是Spring Boot等Java项目的常用配置),枚举会被序列化为它的常量名称(也就是你定义的WAITING、BUSY、READY这些大写字符串)。
所以List<ReservationState> reservations对应的JSON结构就是一个字符串数组,放在请求体里大概是这样:
{ "reservations": [ "WAITING", "BUSY", "READY" ] }
特殊情况:如果后端配置了自定义枚举序列化
你的枚举里有个status字段(对应"Waiting"、"Busy"、"Ready"),如果后端代码里配置了让枚举序列化为这个字段的值(比如用@JsonValue注解标记getStatus()方法),那对应的JSON就要改成这些小写开头的字符串:
{ "reservations": [ "Waiting", "Busy", "Ready" ] }
快速验证方法
如果你不确定后端到底用哪种格式,可以写个简单的Java小测试,直接把枚举列表转成JSON看看:
import com.fasterxml.jackson.databind.ObjectMapper; import java.util.List; public class EnumJsonTest { public static void main(String[] args) throws Exception { List<ReservationState> states = List.of(ReservationState.WAITING, ReservationState.BUSY, ReservationState.READY); ObjectMapper mapper = new ObjectMapper(); String json = mapper.writeValueAsString(states); System.out.println(json); // 输出的就是你需要的JSON数组内容 } }
这样你就能准确知道Postman里该用哪种格式啦~
内容的提问来源于stack exchange,提问作者dries vanbilloen
相关产品推荐
相关产品推荐

