Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将属性文件值转换为@JsonFormat注释的参数?_Java_Spring_Fasterxml - Fatal编程技术网

Java 如何将属性文件值转换为@JsonFormat注释的参数?

Java 如何将属性文件值转换为@JsonFormat注释的参数?,java,spring,fasterxml,Java,Spring,Fasterxml,我使用fasterxml@JsonFormat注释来控制如何在使用Spring MVC的web服务中将日期序列化为json: @JsonFormat(pattern = Util.DATE_FORMAT, timezone = Util.LOCAL_TIME_ZONE) public Date getTransDate() { return transDate; } 我们团队中的另一位开发人员建议我在代码属性中设置常量,以便在不同的环境中更改它们。在其他地方,我使用的是@Value注释

我使用fasterxml
@JsonFormat
注释来控制如何在使用Spring MVC的web服务中将日期序列化为json:

@JsonFormat(pattern = Util.DATE_FORMAT, timezone = Util.LOCAL_TIME_ZONE)
public Date getTransDate() {
    return transDate;
}
我们团队中的另一位开发人员建议我在代码属性中设置常量,以便在不同的环境中更改它们。在其他地方,我使用的是
@Value
注释,如下所示:

@Value("${myapp.localTimeZone}")
private String TRANSACTIONS_TIME_ZONE;

但是,我不知道如何在上面的第一段代码中更改我的
Util.LOCAL\u TIME\u ZONE
,以访问属性。看起来我只能将静态(最终?)值作为注释的参数。我可以使用
@PostConstruct
或类似的方法来设置我的
Util
类上静态字段的值,但我不确定在
@JsonFormat
访问它之前是否保证运行该字段。还有其他方法吗?

尝试使用@JsonFormat(pattern=Util.DATE_FORMAT,timezone=“${myapp.localTimeZone}”)无骰子。它将其视为GMT,可能是因为它无法解析它。所有日期是否都使用属性文件中指定的相同格式?如果是,您可以将格式传递给映射器,
mapper.setDateFormat(df)
@xdhmoore如果它无法解析它,它将在应用程序本身的开始处抛出错误。所以当你说不掷骰子时,我有点怀疑。@chetank我不认为spring看到过它,因为它不是spring注释。这是我的猜测。