【问题标题】:Proper Type for Date Object That Needs to be a LocalDate需要为 LocalDate 的日期对象的正确类型
【发布时间】:2012-08-17 00:25:51
【问题描述】:

如果我想将 JodaTime 库合并到我的 MVC 项目中。为我的 bean 编写 setter/getter 方法的最佳方法是什么?我目前已经将我的局部变量绑定到 JodaTime 中的 LocalDate 对象,但这可能不是一个好主意(如果其他人使用这个 bean,他们可能无法使用 Joda 库)。我应该让我的局部变量java.util.Date 对象吗?如果是这样,我是否会将这些 java.util.Date 对象转换为控制器或服务层中的 JodaTime 的 LocalDate(我的假设是服务层,因为这是我的业务逻辑当前所在的位置)?

public class Survey {
    LocalDate startdate;
    LocalDate enddate;

    public void setStartDate(LocalDate startDate) {
        this.startDate = startDate;
    }

    public LocalDate getStartDate() {
         return this.startDate;
    }
}

【问题讨论】:

    标签: java architecture jodatime service-layer


    【解决方案1】:

    (如果其他人使用这个bean,他们可能无法使用Joda库)

    你现在有任何理由相信他们无法做到吗?

    如果这是一个内部项目,大概你应该能够找出他们是否可以占用 Joda Time。

    我会强烈敦促您尽可能坚持使用 Joda Time 端到端。每次转换都会在编码和(更重要的是)人类对您要表示的数据的理解方面引入另一个潜在错误。

    【讨论】:

    • 不,我没有理由相信。我只是想积极主动:)。因此,由于该类型可以作为 LocalDate 保留在哪一层,我将执行格式化以显示?在Controller中,setter方法还是服务层?
    • @Robert:鉴于它是表示逻辑,我希望它会出现在视图中,不是吗?但是我没有足够的 MVC 经验来给出太多具体的建议......
    猜你喜欢
    • 2021-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-14
    • 2017-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多