我有一个Tomcat服务器应用程序,它根据我填充的类创建xml响应。
其中一个类有一个日期字段:
@XmlRootElement
public class Login {
private String mLoginUserID;
private String mLoginPassword;
private Date mRecordChangeDateTime;
...
@XmlElement(name = "recordChangeDateTime")
public Date getRecordChangeDateTime() {
return mRecordChangeDateTime;
}生成的XML输出如下所示:
<recordChangeDateTime>2011-08-02T21:03:00-04:00</recordChangeDateTime>有几个问题我想弄清楚...
1)它将日期转换为本地时区,日期始终按照协调世界时处理,但当javax.xml输出日期时,它会应用时区转换。
2)我正在尝试配置日期的格式。我在客户端设备上的标准格式是"yyyy-MM-dd HH:mm:ss“,并且希望xml响应也使用这种格式。
我已经花了很多时间研究并试图解决这个问题,我已经尝试了很多SimpleDateFormat,XMLGregorianCalendar等的变体。但我做的任何事都不会改变输出...我不确定是否有注释或其他东西允许我以编程方式配置日期输出?
如果有任何见解,我们将不胜感激!谢谢,
发布于 2011-08-22 13:04:57
这是ISO8601格式。
如here所述,您想要使用XmlJavaTypeAdapter。这将允许您指定处理该元素的所有类型转换的XmlAdapter。您可以提供一个自定义日期解析/格式化日期的方式。
https://stackoverflow.com/questions/7143296
复制相似问题