Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JPA-实体对象持久化的确切含义是什么?持久性的定义是什么?_Java_Hibernate_Jpa - Fatal编程技术网

Java JPA-实体对象持久化的确切含义是什么?持久性的定义是什么?

Java JPA-实体对象持久化的确切含义是什么?持久性的定义是什么?,java,hibernate,jpa,Java,Hibernate,Jpa,我对java web应用程序相当陌生,我正在承担学习JPA的任务。然而,对于实体对象的持久化意味着什么还不清楚。我想我有一个想法,但我不想假设它的意思 我引用了,但在描述持久性字段/属性时,它们继续使用“persist”或“persistence”等词。有人能解释一下这种坚持的想法吗?也许可以定义实体实例持久化的含义 如果你不能在你的定义中使用“persistent”(或任何形式的词)这个词,我们将不胜感激。一个简单的答案会很好,但更深入的解释绝对是受欢迎的!非常感谢 “持久化”表示“在应用程序

我对java web应用程序相当陌生,我正在承担学习JPA的任务。然而,对于实体对象的持久化意味着什么还不清楚。我想我有一个想法,但我不想假设它的意思

我引用了,但在描述持久性字段/属性时,它们继续使用“persist”或“persistence”等词。有人能解释一下这种坚持的想法吗?也许可以定义实体实例持久化的含义

如果你不能在你的定义中使用“persistent”(或任何形式的词)这个词,我们将不胜感激。一个简单的答案会很好,但更深入的解释绝对是受欢迎的!非常感谢

“持久化”表示“在应用程序关闭后继续存在”。对象不只是在易失性存储器中;它在磁盘上的永久性存储中。如果应用程序关闭,或者用户结束会话并开始新的会话,则旧数据仍然可以从磁盘上的永久存储中获得

数据库将信息存储在磁盘上,除非它们是在内存中的版本,这些版本使您能够使用SQL,但没有其他优势。如果使用关系型SQL数据库,则可以使用查询语言轻松创建/读取/更新/删除信息,而不必担心信息如何存储在磁盘上

SQL数据库使用不同的数据结构(如B树)在磁盘上存储关系。关系是根据表和列定义的。表中的每条记录都由行值的元组组成。对象必须使用对象关系映射将表和列映射到对象和属性。JPA概括了这一思想,并按照TopLink和Hibernate等实现的示例将其构建到JavaEE中

NoSQL数据库,如MongoDB,也将信息作为文档而不是关系存储在磁盘上

对象数据库使用Java序列化、XML、JSON或自定义格式(例如)等格式序列化对象及其所有子对象

图形数据库,比如,可以看作是对象数据库的更一般的情况。

  • 持久性仅仅意味着永久存储

    • 在JAVA中,我们使用对象并尝试将对象的值存储到数据库中(主要是RDBMS)
    • JPA提供了对象关系映射(ORM)的实现,因此我们可以直接将对象作为新元组存储到数据库中
    • JPA中的对象转换为实体,以便将其映射到数据库中的表
  • 所以,持久化一个实体意味着将对象(实体)永久存储到数据库中


希望这有帮助

这意味着在系统生命周期之外保存实体的状态。