3.4.3. 持久化接口
Persistence
接口是ORM层数据存储功能的入口。
该接口有以下方法:
createTransaction()
、getTransaction()
– 获取管理事务的接口。该方法可以接受一个数据存储名称作为参数。如果不指定数据存储名称,则使用主数据存储。callInTransaction()
、runInTransaction()
- 在新的事务中执行指定操作,操作可以有返回值,也可以没有。该方法可以接受一个数据存储名称作为参数。如果不指定数据存储,则使用主数据存储。isInTransaction()
– 检查当前是否有活动的事务。getEntityManager()
– 返回绑定到当前事务的EntityManager实例。该方法可以接受一个数据存储名称作为参数。如果不指定数据存储,则使用主数据存储。isSoftDeletion()
– 检查是否启用了软删除模式。setSoftDeletion()
– 启用或禁用软删除模式。设置此属性会影响所有新创建的EntityManager
实例。默认启用软删除。getDbTypeConverter()
– 返回主数据存储或其它数据存储的DbTypeConverter实例。getDataSource()
– 返回主数据存储或附加数据存储的javax.sql.DataSource
实例。
对于通过 getDataSource().getConnection()
方法获得的所有 javax.sql.Connection
对象,在使用连接后,应在 finally
中调用 close()
方法。否则,连接不会被重新放回连接池。随着时间的推移连接池将溢出,应用程序将无法执行数据库查询。
getTools()
– 返回PersistenceTools
接口的实例(见下文)。