JAVA应用程序中使用的Jar包括jackson-core-asl-1.9.13.Jar
和jackson-mapper-asl-1.9.13.Jar
等。
我的问题是处理日期的时候。
读数:(试图启发但杰克逊版本似乎不一样):
JSON序列化自定义格式的日期(无法从字符串值构造java.util.date的实例)
Jackson 2.3.2:在将日期格式设置为ObjectMapper的情况下反序列化日期的问题
编辑01/04/15
2014-07-31 07:00:00.0
第2点:就在使用setter之前,我想把这个字符串格式化为一个日期可能是个好主意。
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date dateebl = dateFormat.parse(deliverydate);
msi.setDatebl(dateebl);
POJO中的datebl声明
private java.util.Date datebl;
第3点和我有的错误:我有的错误是由rest服务器抛出的:
无法从字符串值“Thu Jul 31 07:00:00 CEST 2014”构造java.util.date的实例:无效表示(错误:无法解析日期“Thu Jul 31 07:00:00 CEST 2014”:与任何标准形式(“YYYY-MM-DD't'hh:mm:ss.sssz”,“YYYY-MM-DD't'hh:mm:ss.sss'z'”,“EEE,dd MMM yyyy HH:mm:sszz”,“YYYY-MM-DD”)不兼容)[source:org.glassfish.jersey.message.internal.EntityInputStream@5709779;行:1,列:74](通过参考链:com.rest.entities.mvtswapsin[“datebl”])
我尝试做的:为了解决这个问题,由于我使用的是2.x之前的版本,我认为最好的选择是使用自定义序列化器,因此:
>
在pojo中,注释被添加在getter之前
@JsonSerialize(using = CustomJsonDateSerializer.class)
public java.util.Date getDatebl() {
return datebl;
}
序列化程序创建如下
public class CustomJsonDateSerializer extends JsonSerializer<Date> {
@Override
public void serialize(Date value, JsonGenerator jgen,
SerializerProvider provider) throws IOException,
JsonProcessingException {
SimpleDateFormat dateFormat = new SimpleDateFormat(Properties.General.FORMAT_HEURE_JSON_SERIALIZE_2);
String dateString = dateFormat.format(value);
jgen.writeString(dateString);
}
public static final String FORMAT_HEURE_JSON = new String("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
public static final String FORMAT_HEURE_JSON_SERIALIZE = new String("EEE yyyy-MM-dd'T'HH:mm:ss.SSSZ");
public static final String FORMAT_HEURE_JSON_SERIALIZE_2 = new String("EEE, dd MMM yyyy HH:mm:ss zzz");
public static final String FORMAT_HEURE_JSON_SERIALIZE_3 = new String("yyyy-MM-dd HH:mm:ss");
在这一点上,我迷路了。
我不知道在哪里以及如何更新我的代码。
打开POJO,对日期字段声明进行注释,如下所示
@JsonFormat
(shape = JsonFormat.Shape.STRING, pattern = "<your_date_pattern>")
其中your_date_pattern可以是类似于
yyyy-MM-dd HH:mm:ss
已完成
将json请求传递给POJO类中的REST控制器方法。用户应该只输入以下的datetime格式,否则它应该抛出消息。为什么DateSerializer没有调用? JSON: pojo类变量
使用Spring1.5.8释放Jackson mapper,给出以下异常。 在[源:未知;行:-1,列:-1](通过引用链:com.copart.conversationapi.CallDisposition.model.vo.CallLogEntity[“CallEndTime”]) Callentity.java java pom.xml
问题内容: 假设我有一个这样的类(并进一步假设所有私有变量: 现在,如果要构建此类的toString()表示形式,则可以在Item类中执行以下操作: 但是,如果我在类中说了15个私有变量,该怎么办?我是否需要像这样写出每个变量的名称? 理想情况下,我想遍历该类的私有变量列表并构造字符串表示形式来结束任务: 也许是toJSON方法,我仍然需要访问这些变量的名称。有什么建议? 问题答案: 您可以这样做
我正试图向服务器发出post请求,但我得到以下错误。 这是我的控制器。 我尝试将添加到我的字段中,但这似乎并不能解决问题
我想在JComboBoxe中显示我的名为CodeA(类型为String)的变量中的每个项。我有一条错误消息: 我不明白和之间的转换 编辑:在此处输入图像描述
问题内容: 我在列表中有一个字符串路径集合,例如[“ x1 / x2 / x3”,“ x1 / x2 / x4”,“ x1 / x5”]。我需要从该列表构造一个树状结构,可以对其进行迭代以获得漂亮的打印树。像这样 有什么想法/建议吗?我认为可以通过处理字符串列表来首先解决该问题。编辑:选择的正确答案是一种优雅的实现,其他建议也很好。 问题答案: 遵循可访问树的幼稚实现的实现: 访客模式的界面: 访