Personally I go for the Jboss Spring Hibernate stack with a touch of Oracle thrown in running on Windows Servers.
We have a self-hosted Jira/Confluence server running on Windows that's reached end of life....I can relate to this. Fortunately no Oracle in the mix other than Java.
joda-time + java.util.delorean
You should be using the Java 8 time APIs if you want to do it right.
Personally, I find Java 11 makes this much easier.
I did once work on a project that had a class FluxCapacitor. It was used in testing to set the time. It worked, but had about as many zany unexpected consequences as its fictional namesake.