Хранилище таблиц Azure не может проанализировать правильную дату из Java - PullRequest
0 голосов
/ 16 сентября 2018

Я следую примеру 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)

...