SimpleDateFormatter.java
package com.tradecloud.domain.common;
import javax.xml.datatype.DatatypeConfigurationException;
import javax.xml.datatype.DatatypeFactory;
import javax.xml.datatype.XMLGregorianCalendar;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.concurrent.TimeUnit;
public class SimpleDateFormatter {
public static XMLGregorianCalendar convertDateFormat(XMLGregorianCalendar date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String result = sdf.format(date.toGregorianCalendar().getTime());
try {
Date parsedDate = sdf.parse(result);
XMLGregorianCalendar newDate = convertDate(parsedDate);
return newDate;
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
public static long dateDiff(Date date1, Date date2) {
long diff = date2.getTime() - date1.getTime();
long convert = TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS);
return convert;
}
public static String convertDateToStringFormat(XMLGregorianCalendar date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String result = sdf.format(date.toGregorianCalendar().getTime());
return result;
}
/* private static XMLGregorianCalendar convertDate(Date date) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(date != null ? date : cal.getTime());
try {
XMLGregorianCalendar xCal = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
return xCal.normalize();
} catch (DatatypeConfigurationException e) {
e.printStackTrace();
return null;
}
}*/
public static XMLGregorianCalendar convertDate(Date date) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(date != null ? date : cal.getTime());
try {
XMLGregorianCalendar xCal = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
return xCal;
} catch (DatatypeConfigurationException e) {
e.printStackTrace();
return null;
}
}
}