📄 session.java
字号:
*/ public void update(String entityName, Object object) throws HibernateException; /** * Copy the state of the given object onto the persistent object with the same * identifier. If there is no persistent instance currently associated with * the session, it will be loaded. Return the persistent instance. If the * given instance is unsaved, save a copy of and return it as a newly persistent * instance. The given instance does not become associated with the session. * This operation cascades to associated instances if the association is mapped * with <tt>cascade="merge"</tt>.<br> * <br> * The semantics of this method are defined by JSR-220. * * @param object a detached instance with state to be copied * @return an updated persistent instance */ public Object merge(Object object) throws HibernateException; /** * Copy the state of the given object onto the persistent object with the same * identifier. If there is no persistent instance currently associated with * the session, it will be loaded. Return the persistent instance. If the * given instance is unsaved, save a copy of and return it as a newly persistent * instance. The given instance does not become associated with the session. * This operation cascades to associated instances if the association is mapped * with <tt>cascade="merge"</tt>.<br> * <br> * The semantics of this method are defined by JSR-220. * * @param object a detached instance with state to be copied * @return an updated persistent instance */ public Object merge(String entityName, Object object) throws HibernateException; /** * Make a transient instance persistent. This operation cascades to associated * instances if the association is mapped with <tt>cascade="persist"</tt>.<br> * <br> * The semantics of this method are defined by JSR-220. * * @param object a transient instance to be made persistent */ public void persist(Object object) throws HibernateException; /** * Make a transient instance persistent. This operation cascades to associated * instances if the association is mapped with <tt>cascade="persist"</tt>.<br> * <br> * The semantics of this method are defined by JSR-220. * * @param object a transient instance to be made persistent */ public void persist(String entityName, Object object) throws HibernateException; /** * Remove a persistent instance from the datastore. The argument may be * an instance associated with the receiving <tt>Session</tt> or a transient * instance with an identifier associated with existing persistent state. * This operation cascades to associated instances if the association is mapped * with <tt>cascade="delete"</tt>. * * @param object the instance to be removed * @throws HibernateException */ public void delete(Object object) throws HibernateException; /** * Remove a persistent instance from the datastore. The <b>object</b> argument may be * an instance associated with the receiving <tt>Session</tt> or a transient * instance with an identifier associated with existing persistent state. * This operation cascades to associated instances if the association is mapped * with <tt>cascade="delete"</tt>. * * @param entityName The entity name for the instance to be removed. * @param object the instance to be removed * @throws HibernateException */ public void delete(String entityName, Object object) throws HibernateException; /** * Obtain the specified lock level upon the given object. This may be used to * perform a version check (<tt>LockMode.READ</tt>), to upgrade to a pessimistic * lock (<tt>LockMode.UPGRADE</tt>), or to simply reassociate a transient instance * with a session (<tt>LockMode.NONE</tt>). This operation cascades to associated * instances if the association is mapped with <tt>cascade="lock"</tt>. * * @param object a persistent or transient instance * @param lockMode the lock level * @throws HibernateException */ public void lock(Object object, LockMode lockMode) throws HibernateException; /** * Obtain the specified lock level upon the given object. This may be used to * perform a version check (<tt>LockMode.READ</tt>), to upgrade to a pessimistic * lock (<tt>LockMode.UPGRADE</tt>), or to simply reassociate a transient instance * with a session (<tt>LockMode.NONE</tt>). This operation cascades to associated * instances if the association is mapped with <tt>cascade="lock"</tt>. * * @param object a persistent or transient instance * @param lockMode the lock level * @throws HibernateException */ public void lock(String entityName, Object object, LockMode lockMode) throws HibernateException; /** * Re-read the state of the given instance from the underlying database. It is * inadvisable to use this to implement long-running sessions that span many * business tasks. This method is, however, useful in certain special circumstances. * For example * <ul> * <li>where a database trigger alters the object state upon insert or update * <li>after executing direct SQL (eg. a mass update) in the same session * <li>after inserting a <tt>Blob</tt> or <tt>Clob</tt> * </ul> * * @param object a persistent or detached instance * @throws HibernateException */ public void refresh(Object object) throws HibernateException; /** * Re-read the state of the given instance from the underlying database, with * the given <tt>LockMode</tt>. It is inadvisable to use this to implement * long-running sessions that span many business tasks. This method is, however, * useful in certain special circumstances. * * @param object a persistent or detached instance * @param lockMode the lock mode to use * @throws HibernateException */ public void refresh(Object object, LockMode lockMode) throws HibernateException; /** * Determine the current lock mode of the given object. * * @param object a persistent instance * @return the current lock mode * @throws HibernateException */ public LockMode getCurrentLockMode(Object object) throws HibernateException; /** * Begin a unit of work and return the associated <tt>Transaction</tt> object. * If a new underlying transaction is required, begin the transaction. Otherwise * continue the new work in the context of the existing underlying transaction. * The class of the returned <tt>Transaction</tt> object is determined by the * property <tt>hibernate.transaction_factory</tt>. * * @return a Transaction instance * @throws HibernateException * @see Transaction */ public Transaction beginTransaction() throws HibernateException; /** * Get the <tt>Transaction</tt> instance associated with this session. * The class of the returned <tt>Transaction</tt> object is determined by the * property <tt>hibernate.transaction_factory</tt>. * * @return a Transaction instance * @throws HibernateException * @see Transaction */ public Transaction getTransaction(); /** * Create a new <tt>Criteria</tt> instance, for the given entity class, * or a superclass of an entity class. * * @param persistentClass a class, which is persistent, or has persistent subclasses * @return Criteria */ public Criteria createCriteria(Class persistentClass); /** * Create a new <tt>Criteria</tt> instance, for the given entity class, * or a superclass of an entity class, with the given alias. * * @param persistentClass a class, which is persistent, or has persistent subclasses * @return Criteria */ public Criteria createCriteria(Class persistentClass, String alias); /** * Create a new <tt>Criteria</tt> instance, for the given entity name. * * @param entityName * @return Criteria */ public Criteria createCriteria(String entityName); /** * Create a new <tt>Criteria</tt> instance, for the given entity name, * with the given alias. * * @param entityName * @return Criteria */ public Criteria createCriteria(String entityName, String alias); /** * Create a new instance of <tt>Query</tt> for the given HQL query string. * * @param queryString a HQL query * @return Query * @throws HibernateException */ public Query createQuery(String queryString) throws HibernateException; /** * Create a new instance of <tt>SQLQuery</tt> for the given SQL query string. * * @param queryString a SQL query * @return SQLQuery * @throws HibernateException */ public SQLQuery createSQLQuery(String queryString) throws HibernateException; /** * Create a new instance of <tt>Query</tt> for the given collection and filter string. * * @param collection a persistent collection * @param queryString a Hibernate query * @return Query * @throws HibernateException */ public Query createFilter(Object collection, String queryString) throws HibernateException; /** * Obtain an instance of <tt>Query</tt> for a named query string defined in the * mapping file. * * @param queryName the name of a query defined externally * @return Query * @throws HibernateException */ public Query getNamedQuery(String queryName) throws HibernateException; /** * Completely clear the session. Evict all loaded instances and cancel all pending * saves, updates and deletions. Do not close open iterators or instances of * <tt>ScrollableResults</tt>. */ public void clear(); /** * Return the persistent instance of the given entity class with the given identifier, * or null if there is no such persistent instance. (If the instance is already associated * with the session, return that instance. This method never returns an uninitialized instance.) * Obtain the specified lock mode if the instance exists. * * @param clazz a persistent class * @param id an identifier * @return a persistent instance or null * @throws HibernateException */ public Object get(Class clazz, Serializable id) throws HibernateException; /** * Return the persistent instance of the given entity class with the given identifier, * or null if there is no such persistent instance. (If the instance is already associated * with the session, return that instance. This method never returns an uninitialized instance.) * Obtain the specified lock mode if the instance exists. * * @param clazz a persistent class * @param id an identifier * @param lockMode the lock mode * @return a persistent instance or null * @throws HibernateException */ public Object get(Class clazz, Serializable id, LockMode lockMode) throws HibernateException; /** * Return the persistent instance of the given named entity with the given identifier, * or null if there is no such persistent instance. (If the instance is already associated * with the session, return that instance. This method never returns an uninitialized instance.) * * @param entityName the entity name * @param id an identifier * @return a persistent instance or null * @throws HibernateException */ public Object get(String entityName, Serializable id) throws HibernateException; /** * Return the persistent instance of the given entity class with the given identifier, * or null if there is no such persistent instance. (If the instance is already associated * with the session, return that instance. This method never returns an uninitialized instance.) * Obtain the specified lock mode if the instance exists. * * @param entityName the entity name * @param id an identifier * @param lockMode the lock mode * @return a persistent instance or null * @throws HibernateException */ public Object get(String entityName, Serializable id, LockMode lockMode) throws HibernateException; /** * Return the entity name for a persistent entity * * @param object a persistent entity * @return the entity name * @throws HibernateException */ public String getEntityName(Object object) throws HibernateException; /** * Enable the named filter for this current session. * * @param filterName The name of the filter to be enabled. * @return The Filter instance representing the enabled fiter. */ public Filter enableFilter(String filterName); /** * Retrieve a currently enabled filter by name. * * @param filterName The name of the filter to be retrieved. * @return The Filter instance representing the enabled fiter. */ public Filter getEnabledFilter(String filterName); /** * Disable the named filter for the current session. * * @param filterName The name of the filter to be disabled. */ public void disableFilter(String filterName); /** * Get the statistics for this session. */ public SessionStatistics getStatistics(); /** * Set an unmodified persistent object to read only mode, or a read only * object to modifiable mode. In read only mode, no snapshot is maintained * and the instance is never dirty checked. * * @see Query#setReadOnly(boolean) */ public void setReadOnly(Object entity, boolean readOnly); /** * Controller for allowing users to perform JDBC related work using the Connection * managed by this Session. * * @param work The work to be performed. * @throws HibernateException Generally indicates wrapped {@link java.sql.SQLException} */ public void doWork(Work work) throws HibernateException; /** * Disconnect the <tt>Session</tt> from the current JDBC connection. If * the connection was obtained by Hibernate close it and return it to * the connection pool; otherwise, return it to the application. * <p/> * This is used by applications which supply JDBC connections to Hibernate * and which require long-sessions (or long-conversations) * <p/> * Note that disconnect() called on a session where the connection was * retrieved by Hibernate through its configured * {@link org.hibernate.connection.ConnectionProvider} has no effect, * provided {@link ConnectionReleaseMode#ON_CLOSE} is not in effect. * * @return the application-supplied connection or <tt>null</tt> * @see #reconnect(Connection) * @see #reconnect() */ Connection disconnect() throws HibernateException; /** * Obtain a new JDBC connection. This is used by applications which * require long transactions and do not supply connections to the * session. * * @see #disconnect() * @deprecated Manual reconnection is only needed in the case of * application-supplied connections, in which case the * {@link #reconnect(java.sql.Connection)} for should be used. */ void reconnect() throws HibernateException; /** * Reconnect to the given JDBC connection. This is used by applications * which require long transactions and use application-supplied connections. * * @param connection a JDBC connection * @see #disconnect() */ void reconnect(Connection connection) throws HibernateException;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -