我有一個用@XmlRootElement
註解的Java類。這個Java類有一個很長的屬性(private long id
),我想返回到JavaScript客戶端。如何使用JAXB將長整型屬性作爲JSON字符串值返回
我創建JSON如下:
MyEntity myInstance = new MyEntity("Benny Neugebauer", 2517564202727464120);
StringWriter writer = new StringWriter();
JSONConfiguration config = JSONConfiguration.natural().build();
Class[] types = {MyEntity.class};
JSONJAXBContext context = new JSONJAXBContext(config, types);
JSONMarshaller marshaller = context.createJSONMarshaller();
marshaller.marshallToJSON(myInstance, writer);
json = writer.toString();
System.out.println(writer.toString());
這將產生:
{"name":"Benny Neugebauer","id":2517564202727464120}
但問題是,長期價值是JavaScript客戶端過大。因此,我想將此值作爲字符串返回(不需要在Java中使用長字符串)。
是否有可以生成以下內容的註釋(或類似內容)?
{"name":"Benny Neugebauer","id":"2517564202727464120"}
太棒了!謝謝你這個非常詳細的答案。使用EclipseLink MOXY保持良好的工作和運氣! – 2012-07-31 15:16:16