将 JSON 对象中的日期发送到 RESTFUL WS



我想将 json 对象中的日期(和其他信息)从 android 应用程序发送到 Restful WS

这就是我在我的安卓应用程序中所做的。

        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 服务中,我正在使用 MySql 的 ORM 休眠,它可以将对象插入数据库,但日期字段始终为空

来自 Web 服务的快照

@POST
@Path("/add")
public Response addOffer(Offers offer) throws IOException {
    offerService.addOffer(offer);
    return Response.status(Status.CREATED).entity(offer).build();
}

这是方法添加报价。

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

最新更新