第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何為 DynamoDB 設(shè)置時區(qū)在 spring 數(shù)據(jù)中自動生成時間戳

如何為 DynamoDB 設(shè)置時區(qū)在 spring 數(shù)據(jù)中自動生成時間戳

三國紛爭 2023-03-31 14:26:40
我正在嘗試在 dynamoDb 表中添加時間屬性。我在我的日期容器上添加了 @DynamoDBAutoGeneratedTimestamp 注釋,但它似乎選擇 00:00 作為默認(rèn)時區(qū)。@get:DynamoDBAutoGeneratedTimestamp(strategy=DynamoDBAutoGenerateStrategy.CREATE)    var createdAt: String? = null    @get:DynamoDBAutoGeneratedTimestamp(strategy=DynamoDBAutoGenerateStrategy.ALWAYS)    var updateAt: String? = null
查看完整描述

1 回答

?
阿波羅的戰(zhàn)車

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個贊

無法為 設(shè)置區(qū)域偏移量@DynamoDBAutoGeneratedTimestamp,但可以創(chuàng)建您自己的@DynamoDBAutoGenerator實(shí)現(xiàn)以及相應(yīng)的注釋。


以下是您將如何在 Java 中完成它。(看起來您使用的是 Kotlin,但轉(zhuǎn)換它應(yīng)該很簡單。)


@DynamoDBAutoGenerated(generator=AutoGeneratedTimestampWithOffset.Generator.class)

@Retention(RetentionPolicy.RUNTIME)

@Target({ElementType.METHOD})

public @interface AutoGeneratedTimestampWithOffset {


    /**

     * See {@link ZoneOffset#of(String)} for valid values.

     */

    String offset();

    DynamoDBAutoGenerateStrategy strategy() default DynamoDBAutoGenerateStrategy.ALWAYS;


    public class Generator implements DynamoDBAutoGenerator<String> {

        private final String offset;

        private final DynamoDBAutoGenerateStrategy strategy;


        public Generator(final Class<String> targetType, final AutoGeneratedTimestampWithOffset annotation) {

            this.offset = annotation.offset();

            this.strategy = annotation.strategy();

        }


        @Override

        public DynamoDBAutoGenerateStrategy getGenerateStrategy() {

            return strategy;

        }


        @Override

        public final String generate(final String currentValue) {

            return OffsetDateTime.ofInstant(Instant.now(), ZoneOffset.of(offset)).toString();

        }

    }

}

在你的@DynamoDBTable課堂上,你會像這樣使用這個注解:


@get:AutoGeneratedTimestampWithOffset(offset="+05:30", strategy=DynamoDBAutoGenerateStrategy.CREATE)

var createdAt: String? = null


@get:AutoGeneratedTimestampWithOffset(offset="+05:30", strategy=DynamoDBAutoGenerateStrategy.ALWAYS)

var updateAt: String? = null


查看完整回答
反對 回復(fù) 2023-03-31
  • 1 回答
  • 0 關(guān)注
  • 166 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號