Does the java date.before function take into account the timezone?
-
25-10-2019 - |
Pergunta
I have the timezone set on the server to BST (British Daylight Savings Time), and the date being passed into the function was calculated in UTC.
On the Java Oracle site, it simply refers to comparing the time as "now", but will this "now" time be the same timezone as set or will it be the one set on the server it is running on?
Solução
There is no timezone in the java.util.Date
, it's effectively the timezone of the JVM it's running in.
My advice, if you need to work with timezones, use Joda
Outras dicas
It's implied that java.util.Date
always stores time in UTC. For instance if you call System.currentTimeMillis()
or create new Date()
, internal time will be in UTC. but Date.toString()
will give different time for different default timezones.
So if you pass UTC date into before
function, you will get correct result regardless of server time zone.