📄 session.java
字号:
* and return it as a newly persistent instance. Otherwise, the given instance * does not become associated with the session. * * @param object a persistent or transient instance with state to be copied * @param id the identifier of the instance to copy to * @return an updated persistent instance */ public Object saveOrUpdateCopy(Object object, Serializable id) 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. * * @param object the instance to be removed * @throws HibernateException */ public void delete(Object object) throws HibernateException; /** * Execute a query. * * @param query a query expressed in Hibernate's query language * @return a distinct list of instances (or arrays of instances) * @throws HibernateException */ public List find(String query) throws HibernateException; /** * Execute a query with bind parameters. * * Bind a value to a "?" parameter in the query string. * * @param query the query string * @param value a value to be bound to a "?" placeholder (JDBC IN parameter). * @param type the Hibernate type of the value * @see Hibernate for access to <tt>Type</tt> instances * @return a distinct list of instances (or arrays of instances) * @throws HibernateException */ public List find(String query, Object value, Type type) throws HibernateException; /** * Execute a query with bind parameters. * * Binding an array of values to "?" parameters in the query string. * * @param query the query string * @param values an array of values to be bound to the "?" placeholders (JDBC IN parameters). * @param types an array of Hibernate types of the values * @see Hibernate for access to <tt>Type</tt> instances * @return a distinct list of instances * @throws HibernateException */ public List find(String query, Object[] values, Type[] types) throws HibernateException; /** * Execute a query and return the results in an iterator. If the query has multiple * return values, values will be returned in an array of type <tt>Object[].</tt><br> * <br> * Entities returned as results are initialized on demand. The first SQL query returns * identifiers only. So <tt>iterate()</tt> is usually a less efficient way to retrieve * objects than <tt>find()</tt>. * * @param query the query string * @return an iterator * @throws HibernateException */ public Iterator iterate(String query) throws HibernateException; /** * Execute a query and return the results in an iterator. Write the given value to "?" * in the query string. If the query has multiple return values, values will be returned * in an array of type <tt>Object[]</tt>.<br> * <br> * Entities returned as results are initialized on demand. The first SQL query returns * identifiers only. So <tt>iterate()</tt> is usually a less efficient way to retrieve * objects than <tt>find()</tt>. * * @param query the query string * @param value a value to be witten to a "?" placeholder in the query string * @param type the hibernate type of value * @return an iterator * @throws HibernateException */ public Iterator iterate(String query, Object value, Type type) throws HibernateException; /** * Execute a query and return the results in an iterator. Write the given values to "?" * in the query string. If the query has multiple return values, values will be returned * in an array of type <tt>Object[]</tt>.<br> * <br> * Entities returned as results are initialized on demand. The first SQL query returns * identifiers only. So <tt>iterate()</tt> is usually a less efficient way to retrieve * objects than <tt>find()</tt>. * * @param query the query string * @param values a list of values to be written to "?" placeholders in the query * @param types a list of Hibernate types of the values * @return an iterator * @throws HibernateException */ public Iterator iterate(String query, Object[] values, Type[] types) throws HibernateException; /** * Apply a filter to a persistent collection. A filter is a Hibernate query that may refer to * <tt>this</tt>, the collection element. Filters allow efficient access to very large lazy * collections. (Executing the filter does not initialize the collection.) * * @param collection a persistent collection to filter * @param filter a filter query string * @return Collection the resulting collection * @throws HibernateException */ public Collection filter(Object collection, String filter) throws HibernateException; /** * Apply a filter to a persistent collection. A filter is a Hibernate query that may refer to * <tt>this</tt>, the collection element. * * @param collection a persistent collection to filter * @param filter a filter query string * @param value a value to be witten to a "?" placeholder in the query string * @param type the hibernate type of value * @return Collection * @throws HibernateException */ public Collection filter(Object collection, String filter, Object value, Type type) throws HibernateException; /** * Apply a filter to a persistent collection. * * Bind the given parameters to "?" placeholders. A filter is a Hibernate query that * may refer to <tt>this</tt>, the collection element. * * @param collection a persistent collection to filter * @param filter a filter query string * @param values a list of values to be written to "?" placeholders in the query * @param types a list of Hibernate types of the values * @return Collection * @throws HibernateException */ public Collection filter(Object collection, String filter, Object[] values, Type[] types) throws HibernateException; /** * Delete all objects returned by the query. Return the number of objects deleted. * * @param query the query string * @return the number of instances deleted * @throws HibernateException */ public int delete(String query) throws HibernateException; /** * Delete all objects returned by the query. Return the number of objects deleted. * * @param query the query string * @param value a value to be witten to a "?" placeholder in the query string. * @param type the hibernate type of value. * @return the number of instances deleted * @throws HibernateException */ public int delete(String query, Object value, Type type) throws HibernateException; /** * Delete all objects returned by the query. Return the number of objects deleted. * * @param query the query string * @param values a list of values to be written to "?" placeholders in the query. * @param types a list of Hibernate types of the values * @return the number of instances deleted * @throws HibernateException */ public int delete(String query, Object[] values, Type[] types) 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>). * * @param object a persistent or transient instance * @param lockMode the lock level * @throws HibernateException */ public void lock(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 transient 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 transient 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; /** * Create a new <tt>Criteria</tt> instance, for the given entity class. * * @param persistentClass * @return Criteria */ public Criteria createCriteria(Class persistentClass); /** * Create a new instance of <tt>Query</tt> for the given query string. * * @param queryString a Hibernate query * @return Query * @throws HibernateException */ public Query createQuery(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; /** * Create a new instance of <tt>Query</tt> for the given SQL string. * * @param sql a query expressed in SQL * @param returnAlias a table alias that appears inside <tt>{}</tt> in the SQL string * @param returnClass the returned persistent class */ public Query createSQLQuery(String sql, String returnAlias, Class returnClass); /** * Create a new instance of <tt>Query</tt> for the given SQL string. * * @param sql a query expressed in SQL * @param returnAliases an array of table aliases that appear inside <tt>{}</tt> in the SQL string * @param returnClasses the returned persistent classes */ public Query createSQLQuery(String sql, String[] returnAliases, Class[] returnClasses); /** * 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, or a proxy for the * instance, is already associated with the session, return that instance or proxy.) * * @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. 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; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -