我想将 json 对象中的日期(和其他信息)从 android 应用程序发送到 Restful WS
这就是我在 Android 应用程序中所做的。
String date = mFormat.format(Double.valueOf(mYear)) + "-" + mFormat.format(Double.valueOf(mMonth+1)) + "-" + mFormat.format(Double.valueOf(mDay)
);
// so i will have somthing like date = "2016-03-30"
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd", Locale.FRANCE);
Date dateFin;
dateFin= df.parse(date);
jsonObject.put("datefin", dateFin);
在Web服务中,我使用hibernate与MySql进行ORM,它可以将对象插入数据库,但日期字段始终为NULL
来自网络服务的快照
@POST
@Path("/add")
public Response addOffer(Offers offer) throws IOException {
offerService.addOffer(offer);
return Response.status(Status.CREATED).entity(offer).build();
}
这是方法 addOffer。
public void addOffer(Offers offer) {
// Offers f = new Offers("name","desc","category","market ",longitude,latitude,date);
Session session = createSessionFactory().openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.save(offer);
tx.commit();
} catch (HibernateException e) {
if (tx != null)
tx.rollback();
e.printStackTrace();
} finally {
session.close();
}
}
那么有什么想法为什么会发生这种情况以及如何解决它吗?
最佳答案
最后我发现如果日期不是这种格式
yyyy-MM-dd'T'HH:mm:ssZ
Restful WS 拒绝将其用作日期,因此我将代码更改为
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.FRANCE);
当然我没有时间,所以时间是 00:00:00
关于java - 将 json 对象中的日期发送到 Restful ws,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36043704/