Каков наилучший способ управления временем в Java-приложении?

StackOverflow https://stackoverflow.com/questions/124299

  •  02-07-2019
  •  | 
  •  

Вопрос

Итак, я использую гибернацию и работаю с приложением, которое управляет временем.Каков наилучший способ следить за временем на 24-часовых часах?

Мне не нужно беспокоиться о проблемах с часовым поясом в начале этого приложения, но было бы лучше убедиться, что эта функциональность встроена в самом начале.

Я тоже использую hibernate, к вашему сведению

Это было полезно?

Решение

Храните их до тех пор, пока ts = System.currentTimeMillis().Этот формат на самом деле безопасен для часового пояса, поскольку возвращает время в UTC.

Если вам нужна только временная часть, ну, я не знаю о встроенном типе в Hib, но написать свой собственный тип Time24 тривиально - просто реализуйте либо org.hibernate.UserType или org.hibernate.CompositeUserType (в них загружаются методы =nullSafeGet и store=nullSafeSet).

Видишь http://docs.jboss.org/hibernate/core/3.3/reference/en/html/mapping.html#mapping-types-custom

Но я все равно сэкономил бы абсолютное время в любом случае.Может помочь в будущем.

P.S.Это все, что предполагает, что о дате хранения по какой-то причине не может быть и речи.Часовой пояс в дате иногда действительно мешает.;)

Другие советы

Я бы посоветовал вам рассмотреть возможность использования Joda, http://joda-time.sourceforge.net/, который предлагает гораздо более интуитивно понятную и контролируемую функциональность обработки времени, чем основные реализации даты и календаря.JSR 310 на самом деле является предложением включить новый time API в java 7, который будет в значительной степени основан на Joda.Joda также предлагает как обработку времени в зависимости от часового пояса, так и обработку времени независимо от часового пояса, что облегчает работу с интервалами.

Есть ли что-то неправильное в использовании java.util.Date?

java.util.Date следует использовать;не долгий (и определенно не Calendar).

Если вы используете аннотации, обязательно используйте @Temporal

Недавно я также нашел другую библиотеку, которая, похоже, является ответом на JODA.http://www.date4j.net/

Преимущества перечислены на домашней странице проекта.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top