框架是 Spingboot ,json 是 fastjson ,部分缓存用的是 gson 。数据库+服务器时区都是北京时间,怎么设置才能使接口返回的是泰国时间?
|
DreamStarJun 2, 2022
1
序列化方面不多赘述, jdk8 时间类库足以
```java DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); Instant now = Instant.now(); System.out.printf( "中国: %s%n 泰国: %s", formatter.format(now.atZone(ZoneId.of("Asia/Shanghai"))), formatter.format(now.atZone(ZoneId.of("Asia/Bangkok"))) ); ``` |
|
lowerJun 2, 2022
3
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+7") 直接字段上加注解???
|
|
IsNotGoodJun 2, 2022 via iPhone
4
在 yml 里面配置 date-format-pattern ?没遇到这种混合的情况
|
|
dcsuibianJun 2, 2022 via Android
5
我都是传个时间戳让前端自己调
|
|
6
@lower 有很多接口都有 date 类型返回,不知道有没有办法,全局设置 fastjson 的 timezone ,网上查到的都是 jackson 的配置。我看 fastjson 默认是使用 Timezone.getdefault(),但没找到手动设置的地方
|
|
night98Jun 3, 2022
7
偷懒的话写个 date 类型的自定义序列化器注入进去,里面直接设置为泰国时区格式化
|