我在下面的序列化器中进行JodaTime处理:
public class JodaDateTimeJsonSerializer extends JsonSerializer<DateTime> {
private static final String dateFormat = ("MM/dd/yyyy");
@Override
public void serialize(DateTime date, JsonGenerator gen, SerializerProvider provider)
throws IOException, JsonProcessingException {
String formattedDate = DateTimeFormat.forPattern(dateFormat).print(date);
gen.writeString(formattedDate);
}
}
然后,在每个模型对象上,执行以下操作:
@JsonSerialize(using=JodaDateTimeJsonSerializer.class )
public DateTime getEffectiveDate() {
return effectiveDate;
}
通过以上设置,@ResponseBodyJackson Mapper
肯定可以工作。但是,我不喜欢继续写书的想法@JsonSerialize
。我需要的是没有@JsonSerializeon
模型对象的解决方案。是否可以将这种配置作为一个配置写入spring xml的某个地方?
感谢你的帮助。
尽管你可以为每个日期字段添加注释,但最好为对象映射器进行全局配置。如果使用杰克逊,则可以按以下方式配置弹簧:
<bean id="jacksonObjectMapper" class="com.company.CustomObjectMapper" />
<bean id="jacksonSerializationConfig" class="org.codehaus.jackson.map.SerializationConfig"
factory-bean="jacksonObjectMapper" factory-method="getSerializationConfig" >
</bean>
对于CustomObjectMapper:
public class CustomObjectMapper extends ObjectMapper {
public CustomObjectMapper() {
super();
configure(Feature.WRITE_DATES_AS_TIMESTAMPS, false);
setDateFormat(new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss 'GMT'ZZZ (z)"));
}
}
当然,SimpleDateFormat可以使用你需要的任何格式。
我正在研究Spring支持的数据访问技术,我注意到它提到了多个选项,但我不确定它们之间的区别: Spring-DAO(http://docs.spring.io/spring/docs/2.0.8/reference/dao.html) Spring-orm(http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/htm
问题内容: 问题是,Spring HATEOAS与Spring Data Rest有什么区别? 我觉得两者都可以做同样的事情,而且Spring Data Rest(作为Spring Data的一部分)似乎还活着。 https://github.com/spring-projects/spring-hateoas https://github.com/spring-projects/spring-d
问题内容: 对于新项目,JPA始终是推荐的用于处理关系数据的工具吗?或者在某些情况下,Spring JdbcTemplate是更好的选择?您的回应中应考虑以下因素: 新数据库架构与现有架构和表 开发人员专业知识水平 易于与数据缓存层集成 性能 还有其他需要考虑的因素吗? 问题答案: 如果您不想通过域模型访问数据库架构,请使用Spring JdbcTemplate。使用JdbcTemplate,您将
问题内容: 我的印象是,Spring AOP最适合用于特定于应用程序的任务,例如安全性,日志记录,事务处理等,因为它使用自定义Java5注释作为框架。但是,AspectJ似乎是更友好的设计模式。 谁能强调在Spring应用程序中使用Spring AOP和AspectJ的利弊吗? 问题答案: Spring-AOP优点 它比AspectJ更易于使用,因为你不必使用LTW(加载时编织)或AspectJ编
问题内容: 我了解到注释是在Spring 2.5中引入的,目的是通过使用类路径扫描摆脱xml bean的定义。 是在Spring 3.0中引入的,可以与之一起使用,以完全摆脱xml文件并改用java config。 是否有可能重新使用注释而不是引入注释?我的理解是,两种情况下的最终目标都是创建bean。 问题答案: 并做两件完全不同的事情,不应混淆。 (和和)用于使用类路径扫描自动检测和自动配置b
问题内容: 到目前为止,我对控制器请求映射方法的理解是,我们可以指定RedirectAttributes参数,并在请求重定向时使用属性填充该参数。 范例: 然后,重定向属性将在重定向到的目标页面上可用。 但是,RedirectAttributes类具有两种方法: addAttribute() addFlashAttribute() 读了一段时间的Spring文档,但我有点迷茫。两者之间的根本区别是