我有一个toString
方法,如下所示:
public String toString() {
return new ReflectionToStringBuilder(this, new MultilineRecursiveToStringStyle()).toString();
}
这很有效,但Timestamps(以及我认为,Dates)显示为对象上的普通toString会显示:
changeTime=java.sql.Timestamp@32a9d65c[
nanos=0
],
有没有办法告诉ReflectionToStringBuilder
我希望Date对象格式化?
答案 0 :(得分:-1)
是。 ReflectionToStringBuilder
允许:
new ReflectionToStringBuilder(this) {
@Override
protected Object getValue(Field field) throws IllegalArgumentException, IllegalAccessException {
if (Timestamp.class.equals(field.getType())) {
return "convert timestamp to String";
} else {
return super.getValue(field);
}
}
}