我正在尝试将时区设置为系统默认值。
我在String
类中有一个BatchDateUtils.java
变量:
public static final String DEFAULT_TIMEZONE = TimeZone.getDefault().toString();
我想要实现的是:
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", timezone = BatchDateUtils.DEFAULT_TIMEZONE)
private Date reportDateFrom;
我得到:
Attribute value must be constant
总的来说,我理解错误是什么,但是我该如何解决呢?谢谢!
答案 0 :(得分:3)
如果要在注释中设置值,则必须定义一个常量值,例如
$file = fopen('myFileName.csv','w');
$data= array_map("utf8_decode", $data);
fputcsv($file,$data);
。
取决于JVM配置的东西不是一个常量;但更笼统地说,任何使用方法结果的东西都不是常量。
此外,依赖默认时区很少是一个好主意,因为它可以在运行时更改,很容易配置错误等。