【问题标题】:What do they mean by persistence in nHibernate?他们在 nHibernate 中的持久性是什么意思?
【发布时间】:2009-05-24 21:00:55
【问题描述】:

在处理 nHibernate 时,术语持久性是什么意思?

究竟什么是持久化?

【问题讨论】:

    标签: nhibernate orm persistence


    【解决方案1】:

    这意味着一个实体与数据库相关联,并且更改将被写入或“持久化”到数据库中。

    这与只存在于内存中的瞬态对象相反。

    【讨论】:

    • 但是您必须编写代码来保存/更新对象是否正确?
    • 我不同意。对象可以通过会话与数据库关联,并且仍然是瞬态的。只有在刷新会话并提交事务后才会持久化。
    【解决方案2】:

    术语持久性通常意味着数据以持久的方式存储,在程序终止或计算机关闭后仍然可用。当使用数据库进行持久化时,通过将数据写入数据库并提交来使数据持久化。

    Persistent 也是 Nhibernate 中的一个术语,指的是 instance states 之一。这意味着对象由NH与数据库同步。 NH 负责将持久对象上的所有更改都存储到数据库中。更改还需要在它们真正持久(持久)之前提交。

    【讨论】:

      【解决方案3】:

      持久性是长期保存某些东西,因此崩溃或断电不会影响它

      【讨论】:

        【解决方案4】:

        大多数 ORM(NHibernate 就是其中之一)将 SQL 模式/数据库公开为对象。当您修改这些对象时,您需要将这些更改“持久化”回数据库,这通常称为数据持久化。

        【讨论】:

          【解决方案5】:

          持久性是存储现有数据的状态,以便以后可以检索和重用。没有它,您将无法在使用软件之间重构您的对象。

          【讨论】:

            【解决方案6】:

            在数据操作的上下文中,持久化是将数据保存或更新回数据库。

            就对象而言,持久状态意味着 iobject 与 DB 同步。

            我们通常使用 ISEssion >> SaveOrUpdate(object) 方法来保存值。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2010-12-01
              • 1970-01-01
              • 2014-12-09
              • 1970-01-01
              • 2019-03-13
              • 2012-10-21
              • 1970-01-01
              相关资源
              最近更新 更多