【问题标题】:How do I make Apache Cayenne respect database defaults?如何让 Apache Cayenne 尊重数据库默认设置?
【发布时间】:2018-03-07 17:31:08
【问题描述】:

我有一个带有一些默认值的 postgres 数据库,例如:

CREATE TABLE product (
    id serial,
    name text,
    created_at DEFAULT now(),
    price numeric DEFAULT 9.99
);

当我执行context.newObject(Product.class) 时,如何让 Cayenne 遵守这些默认设置?

目前我正在连接onPostAdd 回调,然后在那里设置我的默认值,但我想知道这是否是唯一的方法?我不能以某种方式使用我的数据库默认值来保留它DRY

我正在使用 Apache Cayenne 4.1。

【问题讨论】:

    标签: java orm apache-cayenne


    【解决方案1】:

    很遗憾,onPostAdd 是您最好的选择。这是最坏的对象关系阻抗。作为 Cayenne 的作者之一,我很清楚这个问题。希望有一个干燥的解决方案。

    【讨论】:

    猜你喜欢
    • 2015-02-20
    • 1970-01-01
    • 2021-11-19
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    • 2016-05-15
    • 2014-07-15
    • 2017-02-18
    相关资源
    最近更新 更多