powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Странное преобразование Date в XML
7 сообщений из 7, страница 1 из 1
Странное преобразование Date в XML
    #39168727
denis111111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день
Есть некий класс, обьект которого нужно преобразить в XML:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
@Entity
@Table(name = "events")
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Events implements Serializable, IdAble {
    @Column(name = "DATE_EVENT")
    @Temporal(TemporalType.DATE)
    private Date dateEvent;
    @Column(name = "DATE_REGISTRATION")
    @Temporal(TemporalType.DATE)
    private Date dateRegistration;
    @Column(name = "DATE_DECISION")
    @Temporal(TemporalType.DATE)
    private Date dateDecision;
// get set
}



Объект наполнен такими данными:
dateEvent => Mar 8, 1300 12:00:00 AM
dateRegistration => May 30, 2853 12:00:00 AM
dateDecision =>May 2, 1463 12:00:00 AM

Конвертирую XML

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
 public String toXML(Object obj, Class cl) throws JAXBException {
        JAXBContext jaxbContext = JAXBContext.newInstance(cl);
        Marshaller marshaller = jaxbContext.createMarshaller();
        marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, formatedOutput);
        CharArrayWriter writer = new CharArrayWriter();
        marshaller.marshal(obj, writer);
        return writer.toString();
    }


На выходе:
Код: xml
1.
2.
3.
      <dateEvent>1300-03-08T00:00:00+02:00</dateEvent>
      <dateRegistration>2853-05-30T00:00:00+03:00</dateRegistration>
      <dateDecision>1463-05-02T00:00:00+02:00</dateDecision>



Как видете там разные временные пояса +02:00, +03:00, +02:00

Я проверял TimeZone через Calendar, все результаты были Europe/Helsinki

Почему так может быть?
...
Рейтинг: 0 / 0
Странное преобразование Date в XML
    #39168767
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis111111Я проверял TimeZone через Calendar, все результаты были Europe/Helsinki

Почему так может быть?
Daylight Saving Time (DST)

В тестах нужно использовать данные приближенные к реальным а не сгенерированные случайным образом.
...
Рейтинг: 0 / 0
Странное преобразование Date в XML
    #39168782
denis111111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

Так это связано с переходом на летнее\ зимнее время...
Понятно
Спасибо
...
Рейтинг: 0 / 0
Странное преобразование Date в XML
    #39168794
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis111111Так это связано с переходом на летнее\ зимнее время...

Ну, не только. До какого-то года страна в одном часовом поясе, после определённой даты - в другом. Россия последние несколько лет каждый год правила меняет.
...
Рейтинг: 0 / 0
Странное преобразование Date в XML
    #39168816
denis111111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В меня из такой XML:
Код: xml
1.
 <dateEvent>1300-03-08T00:00:00+02:00</dateEvent>



Получалось:
Mon Feb 29 00:00:00 EET 1300

Я как оно могло перепрыгнуть 8 дней назад?
...
Рейтинг: 0 / 0
Странное преобразование Date в XML
    #39168910
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам так принципиально работать в глубоком прошлом?
А с такой точностью?
...
Рейтинг: 0 / 0
Странное преобразование Date в XML
    #39168913
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
denis111111В меня из такой XML:
Код: xml
1.
 <dateEvent>1300-03-08T00:00:00+02:00</dateEvent>



Получалось:
Mon Feb 29 00:00:00 EET 1300

Я как оно могло перепрыгнуть 8 дней назад?
Легко. Измерять даты в привычном нам календаре ранее 1582 г. достаточно странно.
Впервые григорианский календарь был введён папой римским Григорием XIII в католических странах 4 октября 1582 года

https://ru.wikipedia.org/wiki/Григорианский_календарь
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Странное преобразование Date в XML
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]