为了账号安全,请及时绑定邮箱和手机立即绑定

jaxb元帅时间戳

jaxb元帅时间戳

皈依舞 2019-10-17 15:39:21
我无法让JAXB解封Resteasy JAX-RS服务器应用程序中的时间戳。我的课看起来像这样:@XmlAccessorType(XmlAccessType.NONE)@XmlRootElement(name = "foo")public final class Foo {    // Other fields omitted    @XmlElement(name = "timestamp", required = true)    protected Date timestamp;    public Foo() {}    public Date getTimestamp() {        return timestamp;    }    public String getTimestampAsString() {        return (timestamp != null) ? new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(timestamp) : null;    }    public void setTimestamp(final Date timestamp) {        this.timestamp = timestamp;    }    public void setTimestamp(final String timestampAsString) {        try {            this.timestamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(timestampAsString);        } catch (ParseException ex) {            this.timestamp = null;        }    }}有任何想法吗?谢谢。
查看完整描述

3 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

JAXB无法Date直接封送对象,因为它们没有足够的信息来明确。JAXB XmlGregorianCalendar为此目的引入了该类,但是直接使用它是非常不愉快的。


我建议您将timestamp字段XmlGregorianCalendar更改为,并尽可能更改各种方法来更新此字段,同时保留现有的公共接口。


如果要保留该Date字段,则需要实现自己的XmlAdapter类来告诉JAXB如何将DateXML转换为XML。


查看完整回答
反对 回复 2019-10-17
  • 3 回答
  • 0 关注
  • 419 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号