Pregunta

Tengo la zona horaria establecida en el servidor a BST (tiempo de ahorro de verano británico), y la fecha en que se transmite a la función se calculó en UTC.

En el sitio de Java Oracle, simplemente se refiere a comparar el tiempo como "ahora", pero ¿este tiempo "ahora" será la misma zona horaria que se establece o será el que se establece en el servidor en el que se ejecuta?

¿Fue útil?

Solución

No hay zona horaria en el java.util.Date, es efectivamente la zona horaria del JVM en la que se está ejecutando.

Mi consejo, si necesitas trabajar con zonas horarias, usa Joda

Otros consejos

Está implícito que java.util.Date Siempre almacena el tiempo en UTC. Por ejemplo si llamas System.currentTimeMillis() o crear new Date(), el tiempo interno estará en UTC. pero Date.toString() dará un tiempo diferente para diferentes zonas horarias predeterminadas.

Entonces, si pasa la fecha de UTC en before función, obtendrá el resultado correcto independientemente de la zona horaria del servidor.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top