在 REST 中用日期编写 pojo 的更好格式
Better format to write pojos with date in REST
我想在 REST 中使用 POST 操作创建一个实体,我的第一个问题是我的 class 有一个日期参数,我正在使用 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)
在调用我的 DAO 之前我需要转换一些东西吗?最佳实践是什么?
第二点,我想最糟糕的是,我有 classes 和子列表 classes,比如 Event、Edition、Lecture 等等...一个事件有很多版本有很多讲座,...其中一些 classes 有日期参数,在那种情况下我需要的不仅仅是 yyyy-mm-dd,我需要存储时区数字。
如果我想这样做:
@POST
public Response create(Event event)
并且通过一个带有版次、讲座等的活动会失败吗?我是否需要创建第一个事件的第二版而不是讲座并首先转换日期属性?我是否需要创建一个 set 方法来接受我的 pojo 中的字符串并验证它是否正常工作[对我来说这有点奇怪]?
在 REST 中使用日期的更好解决方案是什么?
我使用 Jackson-datatype-joda 正如@Matt Ball 所说和工作的那样
我想在 REST 中使用 POST 操作创建一个实体,我的第一个问题是我的 class 有一个日期参数,我正在使用 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)
在调用我的 DAO 之前我需要转换一些东西吗?最佳实践是什么?
第二点,我想最糟糕的是,我有 classes 和子列表 classes,比如 Event、Edition、Lecture 等等...一个事件有很多版本有很多讲座,...其中一些 classes 有日期参数,在那种情况下我需要的不仅仅是 yyyy-mm-dd,我需要存储时区数字。
如果我想这样做:
@POST
public Response create(Event event)
并且通过一个带有版次、讲座等的活动会失败吗?我是否需要创建第一个事件的第二版而不是讲座并首先转换日期属性?我是否需要创建一个 set 方法来接受我的 pojo 中的字符串并验证它是否正常工作[对我来说这有点奇怪]?
在 REST 中使用日期的更好解决方案是什么?
我使用 Jackson-datatype-joda 正如@Matt Ball 所说和工作的那样