Я новичок в мире Java и JPA. Я изучал JPA и наткнулся на много новых терминов, таких как сущность, настойчивость. Читая, я не мог понять точное определение контекста постоянства .
Может ли кто-нибудь объяснить это простыми словами? Что делать с данными, используемыми в @Entity
?
Например, я считаю это определение слишком сложным для понимания:
Контекст персистентности - это набор сущностей, так что для любой постоянной идентичности существует уникальный экземпляр сущности.
источник
источник
Взято с этой страницы:
Вот краткая шпаргалка по миру JPA:
источник
Настойчивый контекст представляет собой объекты , которые держат данные и квалифицированы , чтобы быть сохранены в некоторой постоянной памяти , как базы данных. После того, как мы
commit
совершаем транзакцию в рамках сеанса, к которому прикреплены эти объекты, Hibernate сбрасывает постоянный контекст, и изменения ( вставка / сохранение, обновление или удаление ) в них сохраняются в постоянном хранилище.источник
И
org.hibernate.Session
API, иjavax.persistence.EntityManager
API представляют собой контекст для работы с постоянными данными.Эта концепция называется контекстом постоянства . Постоянные данные имеют состояние по отношению как к контексту постоянства, так и к базовой базе данных.
источник
«Набор устойчивых экземпляров (сущностей), управляемых экземпляром диспетчера сущностей в заданное время», называется контекстом постоянства.
Аннотация JPA @Entity указывает на устойчивую сущность.
См. Определение JPA здесь
источник
С точки зрения непрофессионала мы можем сказать, что контекст постоянства - это среда, в которой объекты управляются, то есть он синхронизирует "объект" с базой данных.
источник
Хотя @pritam kumar дает хороший обзор, 5-й пункт не соответствует действительности.
https://blogs.oracle.com/carolmcdonald/entry/jpa_caching
EntityManager и Hibernate Session от JPA предлагают расширенный контекст сохранения.
источник
Контекст персистентности - это среда или кеш, в которой экземпляры сущностей (которые могут хранить данные и, следовательно, иметь возможность сохраняться в базе данных) управляются Entity Manager. Он синхронизирует сущность с базой данных. Все объекты, имеющие аннотацию @Entity , способны упорства. @Entity - это не что иное, как класс, который помогает нам создавать объекты для связи с базой данных. Объекты взаимодействуют с помощью методов. Эти методы предоставляет Entity Manager.
источник