XMLGregorianCalendarの使い方?

XMLGregorianCalendarというちょっと扱いづらいJavaクラスとの出会いがありました…(´-`)


XMLGregorianCalendarのインスタンスを作成するにはDatatypeFactoryを利用します。
現在の時刻のXMLGregorianCalendarインスタンスを作成するには、DatatypeFactoryのnewXMLGregorianCalendarメソッドにGregorianCalendarクラスのインスタンスを与えることで出来ました。

DatatypeFactory factory = DatatypeFactory.newInstance();

XMLGregorianCalendar now = factory.newXMLGregorianCalendar(new GregorianCalendar());

上記の応用で、java.util.Date型→XMLGregorianCalendarの変換は

Date date = new Date();//変換したいDate型

GregorianCalendar gc = new GregorianCalendar();
gc.setTime(date);

DatatypeFactory factory = DatatypeFactory.newInstance();
XMLGregorianCalendar xmlgc = factory.newXMLGregorianCalendar(gc);

みたいな感じで、出来ると思う。


参考ブログ
XMLGregorianCalendar - unibonの日記
Javaで基本操作(その4):日時操作(GregorianCalendarで操作、Dateを変換) - 「うりえもん」のいたずらの開発日記


関係ないけどJavaでの日付操作では、ひがやすをさんのこの記事をいつも超参考にさせてもらっています。
java.util.Dateをjava.sql.Dateにきちんと変換する方法 - yvsu pron. yas