Java 使用REST中的日期编写POJO的更好格式

Java 使用REST中的日期编写POJO的更好格式,java,rest,date,datetime,jodatime,Java,Rest,Date,Datetime,Jodatime,我想在REST中使用POST操作创建一个实体,我的第一个问题是我的类有一个日期参数,我使用的是jodatime Datetime 比如: public class User implements Serializable { ... private Date birthday; public void setBirthday(DateTime birthday) { this.birhday = convertDate(birthday); } } 如果我想在REST

我想在REST中使用POST操作创建一个实体,我的第一个问题是我的类有一个日期参数,我使用的是jodatime Datetime

比如:

public class User implements Serializable {
  ...
  private Date birthday;

  public void setBirthday(DateTime birthday) {
    this.birhday = convertDate(birthday);
  }
}
如果我想在REST中编写这样的方法:

@POST
public Response create(User user)
我需要在调用我的刀之前转换一些东西吗?最佳实践是什么

第二点,我想最糟糕的是,我有一系列的子类,比如事件、版本、讲座等等。。。一个活动有很多版本,有很多讲座。。。有些类有日期参数,在这种情况下,我需要超过yyyy mm dd,我需要存储时区数据

如果我想这样做:

@POST
public Response create(Event event)
通过一个有版本、讲座等的活动会失败吗?我是否需要创建第一个事件的第二个版本而不是讲座,并首先转换日期属性?我是否需要创建一个set方法来接受pojo中的字符串,并验证它是否正常工作(对我来说这有点奇怪)


在REST中使用date的更好的解决方案是什么?

我使用Jacksob数据类型joda,正如@Matt Ball所说的那样,并使用Jackson+。使用Jackson+。
LocalDate
对于生日这样的日期是否足够?或者你也需要出生时间吗?Thx@Matt Ball我将研究Jackson-datetype-joda.Thx以及@Tom,LocalDate可以解决我在用户中的问题,但是版本有开始日期和结束日期,我需要时间戳数字。我只是没有早些说明,因为我认为解决方案是一样的。我将编辑itAvoid POJOs Hermanos