#java #intellij-idea #cassandra #timezone
#java #intellij-idea #cassandra #Часовой пояс
Вопрос:
Я пишу некоторый Java-код, взаимодействующий с Cassandra. Мне было интересно, есть ли какой-либо способ настроить часовой пояс для отображения (не для хранения) столбцов TIMESTAMP
типов.
Насколько я понимаю, TIMESTAMP
тип Cassandra — это, по сути, количество миллисекунд, прошедших с эпохи [2], следовательно, для этого типа нет понятия часового пояса, и средство просмотра показывает время как в UTC.
Вот что я пробовал:
Согласно документации JetBrains, существует опция JVM user.timezone
для выполнения такого рода настроек. Итак, я установил параметр JVM драйвера Cassandra как -Duser.timezone=Asia/Seoul
, но, похоже, это не имеет никакого эффекта вообще. Также пробовал -Duser.timezone=UTC 09:00
, и это тоже не сработало.
Есть ли какой-либо способ заставить программу просмотра показывать время в другом часовом поясе?
Ответ №1:
Java не распознает UTC 09:00
идентификатор часового пояса.
Используйте, например, -Duser.timezone=Asia/Pyongyang
или еще более подходящий идентификатор в формате регион / город, или -Duser.timezone=Etc/GMT-9
если вы настаиваете на предоставлении смещения, а не часового пояса. В последнем случае обратите внимание на перевернутый знак, -9
для 09:00
.
Распознанные идентификаторы часовых поясов находятся в списке часовых поясов базы данных tz.
Комментарии:
1. Я забыл упомянуть, что я также пробовал
-Duser.timezone=Asia/Seoul
и это тоже не сработало.2. В таком случае, извините, у меня закончились идеи.
3. Это прискорбно. Тем не менее, я ценю ваш комментарий.