在 Play 中自定义 JSON 序列化
我正在使用 renderJSON(Object) 将一些对象作为 JSON 值返回,并且除了一个字段之外它工作正常。有没有一种简单的方法可以添加该字段,而无需手动创建整个 json 模板?
I'm using renderJSON(Object)
to return some objects as JSON values, and it's working fine except for one field. Is there an easy way to add in that one field without having to manually create the whole json template?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Play 使用 GSON 构建 JSON 字符串。如果您的一个字段是特定的对象类型,那么您可以通过为该类型提供自定义序列化来轻松完成此操作。请参阅此处的文档
http://sites .google.com/site/gson/gson-user-guide#TOC-Custom-Serialization-and-Deserializ
但是,如果它是一个 Integer 类,那么您希望以一种方式工作,换一种方式换另一种方式,那么你可能会遇到更多的困难。
例子
Play uses GSON to build the JSON string. If your one field is a specific object type, then you can easily do this by providing a customised serialisation for that type. See the documentation here
http://sites.google.com/site/gson/gson-user-guide#TOC-Custom-Serialization-and-Deserializ
However, if it is an Integer class for example, that you want to work in one way for one, and another way for another, then you may have a little more difficulty.
Example
只需做一个
等等。
Simply do a
etc.
在评估了播放框架之后,我们遇到了一个障碍,并决定为外部 API 序列化 JSON。很多文章建议在游戏中使用 Lift 框架,这看起来像是额外的开销。在尝试了游戏框架中的一些框架/模块后,我和大学决定编写一个轻量级代码块来满足我们的需求。
并来自控制器。
After evaluating the play framework we hit a stumbling block and decision choice on serializing JSON for an external API. Allot of articles out there suggest using the Lift framework within play which just seem like extra overhead.After trying some of the frameworks / modules with in the play framework a college and myself decided to write a light weight code block that could cater for our needs.
And from the controller.