Hibernate 删除通过Wicket标签显示日期模型时的时间部分

Hibernate 删除通过Wicket标签显示日期模型时的时间部分,hibernate,wicket,Hibernate,Wicket,我对维克特不熟悉。我想显示通过hibernate从数据库中获取的日期,并用一个简单的标签显示它 Label("nextCallDate",new PropertyModel(contact, "nextCallDate")) 但问题是我只想显示日期,而忽略了时间部分。有没有办法做到这一点?或者更进一步,是否有任何方法可以格式化标签组件的输出 谢谢您可以将属性模型子类化并创建一个模型,该模型将使用Apache Commons中的DateFormatUtils返回格式化字符串。这样做的好处是,您不

我对维克特不熟悉。我想显示通过hibernate从数据库中获取的日期,并用一个简单的标签显示它

Label("nextCallDate",new PropertyModel(contact, "nextCallDate"))
但问题是我只想显示日期,而忽略了时间部分。有没有办法做到这一点?或者更进一步,是否有任何方法可以格式化标签组件的输出


谢谢

您可以将
属性模型子类化
并创建一个模型,该模型将使用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"))

您可以对
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"))

您可以对
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"))

您可以对
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"))

使用IConverter进行转换。您可以在应用程序上注册一个或覆盖组件上的#getConverter()。

为此使用IConverter。您可以在应用程序上注册一个或覆盖组件上的#getConverter()。

为此使用IConverter。您可以在应用程序上注册一个或覆盖组件上的#getConverter()。

为此使用IConverter。您可以在应用程序上注册一个或覆盖组件上的#getConverter()