2010-05-24 6 views
7

Wie kann ich ein bestimmtes Objekt (in generischer Weise mit Reflektion) in hübsch druckbare HTML konvertieren? Welche fertige Bibliothek empfehlen Sie, dass dies tut? Ich brauche Unterstützung für einfache verschachtelte Objekte (solange sie keine Schleifen im Objektgraphen erzeugen).Konvertieren Sie jedes Objekt in pretty HTML in Java

Ich habe versucht, es in JSON zu konvertieren, aber DefaultPrettyPrinter ist nicht HTML-freundlich.

Antwort

3

Sie könnten relativ einfach Ihre eigene Bibliothek dafür schreiben. Here's some example code, die Sie relativ leicht ändern können, um HTML anzuzeigen. Eine weitere Option ist das Anzeigen der JSON in einem Code-Tag in HTML. Eine letzte Option ist die Verwendung von ReflectionToStringBuilder in apache commons lang und erneut das Ergebnis innerhalb eines Code-Tags in HTML. Die Verwendung von Apache Commons ist jedoch wahrscheinlich nicht besser als das JSON-Format.

+0

Was ich gerade mache, ist in der Tat zeigen Sie die JSON in einem Code-Tag. Nicht das schönste in der Welt, aber es funktioniert. – ripper234

7

Sie könnten einen XSLT-Stil für die XML-Ausgabe von xstream für Ihr Objekt erstellen.

0

Kann in einem zweistufigen Verfahren durchgeführt werden:

1) Objekt JSON Wandeln Sie alle Bibliothek Ihrer Präferenz unter Verwendung beispiel jackson:

ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter(); 
String json = ow.writeValueAsString(object); 

2) Konvertieren von JSON-String eine fertige Lösung HTML, wie json2html oder rechts eine eigene Implementierung. Werfen Sie einen Blick auf die visualizer Demo: