Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

424
Views
¿Cómo imprimir bastante un objeto Java complejo (por ejemplo, con campos que son colecciones de objetos)?

Estoy buscando una función de biblioteca (idealmente de un marco de uso común, por ejemplo, Spring, Guava, Apache Commons, etc.) que imprima muy bien los valores de cualquier objeto Java.

Esta es una pregunta general más que específica. He visto preguntas similares en StackOverflow para las cuales una respuesta común es "implemente su propio método toString() en la clase", pero esta opción no siempre es práctica. Estoy buscando una forma general de hacer esto con cualquier objeto que encuentre, que puede tener su origen en un código de terceros. Otra sugerencia es usar RefectionToStringBuilder de Apache Commons, por ejemplo:

 new ReflectionToStringBuilder(complexObject, new RecursiveToStringStyle()).toString()

Pero esto tiene un uso limitado, por ejemplo, cuando se encuentra con una colección, tiende a generar algo como esto:

 java.util.ArrayList@fcc7ab1[size=1]

Un ejemplo de caso de uso real es registrar un Iterable<PushResult> devuelto por el método pushCommand.call() de JGit. Si publica una respuesta, asegúrese de que funcione con este y con cualquier otro objeto complejo.

about 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Podrías probar y usar Gson. también serializa Arrays, Maps o lo que sea....

 MyObject myObject = new MyObject(); Gson gson = new GsonBuilder().setPrettyPrinting().serializeNulls().create(); gson.toJson(myObject);

Para el uso de deserialización:

 gson.fromJson(MyObject.class);

Para mapas escritos, vea esta respuesta: Gson: ¿Hay una manera más fácil de serializar un mapa?

about 4 years ago · Santiago Trujillo Report

0

Puede usar la clase Jackson ObjectMapper para vincular datos con json. Puedes usarlo como a continuación:

 ObjectMapper mapper = new ObjectMapper();

puedes guardar json en un objeto como el siguiente

 Object json = mapper.readValue(input,object.class);

puedes escribir eso en variable de cadena

 String prettyJson = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(json);

debería funcionar bien.

about 4 years ago · Santiago Trujillo Report

0

Puede usar GSON para convertir su objeto en una cadena. Esto funcionará para todos los objetos,

 Gson gson = new Gson(); System.out.println(gson.toJson(objectYouWantToPrint).toString());
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!