加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 用于XMLGregorianCalendar类型的Joda DateTime格式

发布时间:2020-12-14 05:39:05 所属栏目:Java 来源:网络整理
导读:我使用JAXB 2.2.8-b01 impl,我有一个模式,它有一个xs:date元素,它创建一个 XMLGregorianCalendar实例.我试图获得 Joda-Time DateTime时间戳格式,但由于我必须有一个XMLGregorianCalendar实例,我不知道它是否可能.有任何想法吗? 架构XSD: xs:element type=
我使用JAXB 2.2.8-b01 impl,我有一个模式,它有一个xs:date元素,它创建一个 XMLGregorianCalendar实例.我试图获得 Joda-Time DateTime时间戳格式,但由于我必须有一个XMLGregorianCalendar实例,我不知道它是否可能.有任何想法吗?

架构XSD:

<xs:element type="xs:date" name="date-archived" minOccurs="0" maxOccurs="1" nillable="false"/>

JAXB生成的属性:

XmlSchemaType(name = "date")
    protected XMLGregorianCalendar date;

XML转换类:

//java.util.Date正在传递

private XMLGregorianCalendar converToGregorianCal(Date date) {
        DatatypeFactory df = null;
        try {
          df = DatatypeFactory.newInstance();
        } catch (DatatypeConfigurationException e) {
          LOG.error("error getting DatatypeFactory instance " + e.getMessage()); 
        }
        if (date == null) {
          return null;
        } else {
          GregorianCalendar gc = new GregorianCalendar();
          gc.setTimeInMillis(date.getTime());
          return df.newXMLGregorianCalendar(gc);
        }
      }

解决方法

这是一个简短的方法:
public DateTime convert(final XMLGregorianCalendar xmlgc) {
    return new DateTime(xmlgc.toGregorianCalendar().getTime());
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读