使用 Gson 将 Java 对象转换为 javax.ws.rs 中的 Json

Convert Java object to Json in javax.ws.rs with Gson

我有一个 REST API 可以成功地将响应转换为 json 格式

使用:javax.ws.rs

return Response.ok().entity(travelRequisitionFormDTO).build();

但是,如果我尝试使用以下方法将同一对象转换为 json:

    Gson gson = new Gson();
    String json = gson.toJson(travelRequisitionFormDTO);

这里我得到一个异常:

>     java.lang.WhosebugError
>       com.google.gson.internal.$Gson$Types.checkNotPrimitive($Gson$Types.java:431)

这是问题

如何使用 Gson

将 Java 对象转换为 Json

如果你想将 Simple POJO 转换为 Json String:--

,你可以这样做
// populate all field of travelRequisitionFormDTO

    ObjectMapper mapper = new ObjectMapper();
    String jsonInString = mapper.writeValueAsString(travelRequisitionFormDTO);  

POM 依赖:--

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.11.3</version>
</dependency>