我是wicket的新手。我希望显示一个由hibernate从数据库中获取的日期,并通过一个简单的Label显示它。
Label("nextCallDate",new PropertyModel(contact, "nextCallDate"))
但问题是我只想显示日期,并省略时间部分。有没有办法做到这一点?或者更进一步,有没有什么方法可以格式化Label组件的输出?
由于
答案 0 :(得分:3)
使用IConverter。您可以在应用程序上注册一个或覆盖组件上的#getConverter()。
答案 1 :(得分:0)
您可以继承PropertyModel
并创建一个模型,该模型将使用Apache Commons中的DateFormatUtils返回格式化字符串。这样做的好处是您无需修改实体,并且更容易重复使用。
public class DatePropertyModel extends PropertyModel{
public DatePropertyModel(Object modelObject, String expression) {
super(modelObject, expression);
}
@Override
public Object getObject() {
return DateFormatUtils.format((Date)super.getObject(), "dd-MM-yyyy");
}
}
然后使用此模型类
定义标签Label("nextCallDate",new DatePropertyModel(contact, "nextCallDate"))