我已尝试为内置ObjectMapper
配置play.libs.Json
。我已按照文档进行操作,但MapperLoader似乎被忽略了。
这就是我所做的(基于文档):
创建CustomMapperLoader
public class JsonMapperLoader extends GuiceApplicationLoader {
@Override
public GuiceApplicationBuilder builder(final Context context) {
ObjectMapper mapper = Json.newDefaultMapper()
.setDateFormat(new SimpleDateFormat(Constants.ISO8601_DATE_FORMAT));
Json.setObjectMapper(mapper);
return super.builder(context);
}
}
在application.conf中显式加载加载程序:
play.application.loader = "JsonMapperLoader"
当我序列化日期时,它仍然给我时间戳而不是指定的格式。
我有几个解决方法:
ApplicationController
play.core.ObjectMapperProvider
并启用了我的CustomObjectMapperProvider
。这个问题还有更好的选择吗?
谢谢&问候,
答案 0 :(得分:0)
我从未尝试过手册中建议的方法(使用自定义ApplicationLoader)。我用另一种技术。简而言之:有一个类,它配置ObjectMapper;该类将它作为单例注入模块中。
您可以看到完整的代码示例here。