Contamos con la solución a esta duda, al menos eso pensamos. Si continuas con interrogantes puedes dejarlo en el apartado de comentarios, para nosotros será un gusto ayudarte
Solución:
Puede hacer esto para devolver un Date
:
calendar.toGregorianCalendar().getTime()
Encontré ese código de este tutorial. A partir de ahí, puede usar un SimpleDateFormat para convertirlo en un string en el formato que quieras.
Pero, si está utilizando JDBC para guardar la fecha en la base de datos, probablemente pueda pasar el Date
directamente con este método:
preparedStatement.setDate(colNum, myDate);
Aquí hay una respuesta más clara:
Obtenga una instancia de Fecha de la instancia de XMLGregorianCalendar:
Date date = xmlCalendar.toGregorianCalendar().getTime();
Encontré ese código de Convert XMLGregorianCalendar to Date en Java
Formatee esa instancia de Fecha con el formato “MM/dd/aaaa hh:mm:ss a”, obtendrá el formato MM/DD/AAAA hh:mm:ss AM
DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a");
String formattedDate = formatter.format(date)
De convertir fecha a cadena en Java
Para insertar la base de datos, haría lo que sugirió Daniel
Si desea insertar su fecha en una base de datos, primero haría lo que sugirió Daniel:
XMLGregorianCalendar xgc=;
Date timestamp=xgc.toGregorianCalendar().getTime();
y luego insertarlo a través de un PreparedStatement como Timestamp en milisegundos (Epoch time). Así no perderás precisión.
preparedStatement.setTimestamp(colNum,new Timestamp(timestamp.getTime()));
Si para ti ha sido de ayuda este artículo, sería de mucha ayuda si lo compartieras con el resto entusiastas de la programación de esta forma contrubuyes a difundir esta información.