上下文:尝试使用jacksonMapper将JSON字符串值转换为java Date值
代码:
MyPOJO {
private String id;
private String desc;
private Date startDate;
// getters and setters
}
我的服务DAO调用在将MyPOJO作为JSON字符串对象接收后,将记录插入到MyPOJO的数据库中:
MyPOJODAO {
ObjectMapper mapper = new ObjectMapper();
SimpleDateFormat formatter = new SimpleDateFormat ("dd-MM-yyyy hh:mm:ss");
mapper.setDateFormat("formatter");
MyPOJO myPojo= mapper.reader(MyPOJO.class).readValue(myPojoJsonString);
// db call to insert myPOJO to DB
}
但是,DB调用失败并出现错误类型不匹配:找到BINARY需要DATE。
当我在进行DAO插入调用之前打印myPOJO时,我可以看到startDate
字段未能转换为日期格式。
我错过了什么?还是更容易的替代品?
答案 0 :(得分:0)
请尝试更改该行:
自: SimpleDateFormat formatter = new SimpleDateFormatter(“dd-MM-yyyy hh:mm:ss”);
要: SimpleDateFormat formatter = new SimpleDateFormat(“dd-MM-yyyy hh:mm:ss”);