在我的实体类中,我有一个类型为timestamp的列:
@Column(name = "TESTD")
@Temporal(TemporalType.TIMESTAMP)
private Date test_date;
在我的会话bean中,我正在创建一个返回resultList的select查询,然后我从中创建一个json对象:
Query query = em.createNamedQuery("findAllTest");
List<entityClass> results = query.getResultList();
JSONSerializer.toJSON((List)results ,jsonConfig);
创建json对象时,我想要格式化timestamp列(而不是作为对象返回)。如何才能做到这一点?如何根据我想要的日期格式转换/格式化时间戳列?这样做的最佳方式是什么?
答案 0 :(得分:1)
我猜你正在使用基于代码示例的json-lib,而我从未使用它,但是the javadoc表明JsonConfig提供了以下方法:
public void registerJsonValueProcessor(Class propertyType,
JsonValueProcessor jsonValueProcessor)
Registers a JsonValueProcessor.
[Java -> JSON]
所以我猜你可以使用那个方法,并为Calendar.class注册一个处理器,它将使用你想要的格式将Calendar对象转换为String。
答案 1 :(得分:0)
我创建了第二个瞬态getter,它以字符串格式返回日期。这有点像黑客但有效。