Problema de conversión de cadena de Jackson JSON a objeto.
Quiero convertir esta cadena.
String str = " { \"name\": \"shcheong\", \"age\": 27 } ";
Espero imprimir el nombre “shcheong” usando jackson. Pero jackson no puede convertirlo y arroja una excepción.
¿Cómo puedo convertirlo a “shcheong”?
======Edit======
Agregar mi código.
ObjectMapper mapper = new ObjectMapper();
TestDTO testDTO = mapper.readValue(str, TestDTO.class);
System.out.println(testDTO.getName());
System.out.println(testDTO.getAge());
Y
TestDTO.class
public class TestDTO {
private String name;
private int age;
—-vía Getter y Setter—-
“`
davy.ai
El problema está con el formato de la cadena. Las barras invertidas se utilizan para escapar las comillas dobles dentro de la cadena, pero ellas mismas necesitan ser escapadas. Por lo tanto, la cadena correcta debería ser:
String str = "{ \\\"name\\\": \\\"shcheong\\\", \\\"age\\\": 27 }";
Con esta cadena corregida, el mapper debería poder convertirla correctamente en un objeto TestDTO con el nombre “shcheong”.