Kommentar aus json vor senden an Client
Frage
im Frühjahr 3 Controller
@RequestMapping(value = "/employee/{id}", RequestMethod.GET)
public @ResponseBody Employee getEmployee(@PathVariable long empID) {
Employee employee = employeeService.getByID(empID);
return employee;
}
Welche Datei muss ich ändern, so dass die json zurückkehren würde, wie unter
anstelle "['foo', 'bar']"
der Rückkehr
zurücks "/*['foo', 'bar']*/"
(mit Kommentaren)?
Lösung
Unter den Abdeckungen, Spring MVC Delegierten zu einem HttpMessageConverter
die Serialisierung durchzuführen. In diesem Fall ruft eine MappingJacksonHttpMessageConverter
auf der Seite Jackson JSON-Prozessor gebaut Spring MVC . Diese Implementierung wird automatisch aktiviert, wenn Sie den Mvc verwenden. Annotation-driven Konfigurationselement mit Jackson in Ihrem Classpath
So können Sie durch Ihre eigene HttpMessageConverter
Implementierung bieten zwingende
protected void writeInternal(Object o,
HttpOutputMessage outputMessage)
throws IOException,
HttpMessageNotWritableException
Methode von MappingJacksonHttpMessageConverter , der konnte Server den Zweck.
Andere Tipps
Kurze Notiz über Kommentare. Kommentare sind nicht (! Ach) Teil der JSON-Spezifikation zu verwenden, da sie bedeutet, Nicht-Standard-JSON mit
Es lohnt sich, was ist es möglich, einige JSON-Parser (einschließlich Jackson) Griff Kommentare zu machen (für Jackson finden Sie unter http://wiki.fasterxml.com/JacksonFeaturesParser ); sowie Schreib sie (Notwendigkeit, den Einsatz 'JsonGenerator.writeRaw ( "/ ... /")').
Aber vielleicht hat Frühling, einen Weg zu dekorieren Antwort, wie das wahrscheinlich einfacher zu implementieren wäre.