5.4.3. Интерфейс Persistence
Интерфейс Persistence
является точкой входа в функциональность хранения данных, предоставляемую слоем ORM.
Методы интерфейса:
-
createTransaction()
,getTransaction()
- получить интерфейс управления транзакциями. Методы могут принимать имя хранилища данных. Если хранилище не указано, подразумевается основная база данных. -
callInTransaction()
,runInTransaction()
- выполнить код в новой транзакции с возвратом значения или без возврата значения. Методы могут принимать имя хранилища данных. Если хранилище не указано, подразумевается основная база данных. -
isInTransaction()
- определяет, существует ли в данный момент активная транзакция. -
getEntityManager()
- возвращает экземпляр EntityManager для текущей транзакции. Метод может принимать имя хранилища данных. Если хранилище не указано, подразумевается основная база данных. -
isSoftDeletion()
- позволяет определить, активен ли режим мягкого удаления -
setSoftDeletion()
- устанавливает или отключает режим мягкого удаления. Влияет на аналогичный признак всех создаваемых экземпляровEntityManager
. По умолчанию мягкое удаление включено. -
getDbTypeConverter()
- возвращает экземпляр DbTypeConverter для основной базы данных или для дополнительного хранилища. -
getDataSource()
- получитьjavax.sql.DataSource
для основной базы данных или для дополнительного хранилища.WarningДля всех объектов
javax.sql.Connection
, получаемых методомgetDataSource().getConnection()
, необходимо после использования соединения вызвать методclose()
в секцииfinally
. В противном случае соединение не вернется в пул, через какое-то время пул переполнится, и приложение не сможет выполнять запросы к базе данных. -
getTools()
- возвращает экземпляр интерфейсаPersistenceTools
(см. ниже).