Я следую примеру Azure для отправки данных из Java в хранилище таблиц Azure.Все данные передаются должным образом, но свойство типа java.util.date не отображается должным образом.ниже указан мой класс сущностей
public class AzureDbEntity extends TableServiceEntity {
public AzureDbEntity(String type, String id)
{
this.partitionKey = type;
this.rowKey = id;
}
public AzureDbEntity()
{
}
Date SenderSentAt;
String Sender;
public Date getSentAt() {
return this.SentAt ;
}
public void setSentAt(Date SenderSentAt) {
this.setTimestamp(SenderSentAt);
this.SentAt = SenderSentAt;
}
public String getSender() {
return this.Sender;
}
public void setSender(String Sender) {
this.Sender = Sender;
}
}
Я устанавливаю значения SentAt и Sender в следующем коде
entity.setSentAt(new Date());
entity.setSender(data.Sender);
batchOperation.insertOrReplace(entity);
Журналы приложений показывают, что я отправил следующую дату и время
Sun Sep 16 23:41:30 GST 2018
но когда я проверяю лазурную таблицу хранения.он показывает мне следующее значение
Sun 16 Sep 2018 16:00:18 GMT
Разница между GST и GMT составляет 4 часа, но Azure показывает разницу более чем на 7 часов после преобразования GST в GMT.Я также устанавливаю TimeStamp в коде Java, и он отображается, как и ожидалось, с разницей в 4 часа по Гринвичу (вс 16 сентября 2018 19:41:31 GMT)