Method Summary |
Transaction |
beginTransaction()
開始一個工作單元并且返回相關聯的事務(Transaction)對象。 |
void |
cancelQuery()
終止執行當前查詢。 |
void |
clear()
完整的清除這個session。 |
Connection |
close()
停止這個Session,通過中斷JDBC連接并且清空(cleaning up)它。 |
Connection |
connection()
獲取這個Session的JDBC連接。
如果這個session使用了積極的collection釋放策略(如CMT-容器控制事務的環境下),關閉這個調用的連接的職責應該由當前應用程序負責。 |
boolean |
contains(Object object)
檢查這個對象實例是否與當前的Session關聯(即是否為Persistent狀態)。 |
Criteria |
createCriteria(Class persistentClass)
為給定的實體類或它的超類創建一個新的Criteria實例。 |
Criteria |
createCriteria(Class persistentClass, String alias)
根據給定的實體類或者它的超類創建一個新的Criteria實例,并賦予它(實體類)一個別名。 |
Criteria |
createCriteria(String entityName)
根據給定的實體的名稱(name),創建一個新的Criteria實例。 |
Criteria |
createCriteria(String entityName, String alias)
根據給定的實體的名稱(name),創建一個新的Criteria實例,并賦予它(實體類)一個別名 |
Query |
createFilter(Object collection, String queryString)
根據給定的collection和過濾字符串(查詢條件)創建一個新的Query實例。 |
Query |
createQuery(String queryString)
根據給定的HQL查詢條件創建一個新的Query實例。 |
SQLQuery |
createSQLQuery(String queryString)
根據給定的SQL查詢條件創建一個新的SQLQuery實例。 |
void |
delete(Object object)
從數據庫中移除持久化(persistent)對象的實例。 |
void |
delete(String entityName, Object object)
從數據庫中移除持久化(persistent)對象的實例。 |
void |
disableFilter(String filterName)
禁用當前session的名稱過濾器。 |
Connection |
disconnect()
斷開Session與當前的JDBC連接。 |
Filter |
enableFilter(String filterName)
打開當前session的名稱過濾器。 |
void |
evict(Object object)
將當前對象實例從session緩存中清除。 |
void |
flush()
強制提交清理(flush)Session。 |
Object |
get(Class clazz, Serializable id)
根據給定標識和實體類返回持久化對象的實例,如果沒有符合條件的持久化對象實例則返回null。 |
Object |
get(Class clazz, Serializable id, LockMode lockMode)
根據給定標識和實體類返回持久化對象的實例,如果沒有符合條件的持久化對象實例則返回null。 |
Object |
get(String entityName, Serializable id)
返回與給定的實體命名和標識匹配的持久化實例,如果沒有對應的持久化實例則返回null。 |
Object |
get(String entityName, Serializable id, LockMode lockMode)
返回與給定的實體類和標識所匹配的持久化實例,如果沒有對應的持久化實例則返回null。 |
CacheMode |
getCacheMode()
得到當前的緩存模式。 |
LockMode |
getCurrentLockMode(Object object)
檢測給定對象當前的鎖定級別。 |
Filter |
getEnabledFilter(String filterName)
根據名稱獲取一個當前允許的過濾器(filter)。 |
EntityMode |
getEntityMode()
獲取這個session有效的實體模式。 |
String |
getEntityName(Object object)
返回一個持久化對象的實體名稱。 |
FlushMode |
getFlushMode()
獲得當前的刷新提交(flush)模式。 |
Serializable |
getIdentifier(Object object)
獲取給定的實體對象實例在Session的緩存中的標識,如果該實例是自由狀態(Transient)的或者與其它Session關聯則拋出一個異常。 |
Query |
getNamedQuery(String queryName)
從映射文件中根據給定的查詢的名稱字符串獲取一個Query(查詢)實例。 |
Session |
getSession(EntityMode entityMode)
根據給定的實體模式(Entity Mode)開始一個新的有效的Session。 |
SessionFactory |
getSessionFactory()
獲取創建這個session的SessionFactory實例。 |
SessionStatistics |
getStatistics()
獲取這個session的統計信息。 |
Transaction |
getTransaction()
獲取與這個session關聯的Transaction(事務)實例。 instance associated with this session. |
boolean |
isConnected()
檢查當前Session是否處于連接狀態。 |
boolean |
isDirty()
當前Session是否包含需要與數據庫同步的(數據狀態)變化 ?如果我們刷新提交(flush)這個session是否會有SQL執行? |
boolean |
isOpen()
檢查當前Session是否仍然打開。 |
Object |
load(Class theClass, Serializable id)
在符合條件的實例存在的情況下,根據給定的實體類和標識返回持久化狀態的實例。 |
Object |
load(Class theClass, Serializable id, LockMode lockMode)
在符合條件的實例存在的情況下,根據給定的實體類、標識及指定的鎖定等級返回持久化狀態的實例。 |
void |
load(Object object, Serializable id)
將與給定的標示對應的持久化狀態(值)復制到給定的自由狀態(trasient)實例上。 |
Object |
load(String entityName, Serializable id)
在符合條件的實例存在的情況下,根據給定的實體類和標識返回持久化狀態的實例。 |
Object |
load(String entityName, Serializable id, LockMode lockMode)
在符合條件的實例存在的情況下,根據給定的實體類、標識及指定的鎖定等級返回持久化狀態的實例。 |
void |
lock(Object object, LockMode lockMode)
從給定的對象上獲取指定的鎖定級別。 |
void |
lock(String entityName, Object object, LockMode lockMode)
從給定的對象上獲取指定的鎖定級別。 |
Object |
merge(Object object)
將給定的對象的狀態復制到具有相同標識的持久化對象上。 |
Object |
merge(String entityName, Object object)
將給定的對象的狀態復制到具有相同標識的持久化對象上。 |
void |
persist(Object object)
將一個自由狀態(transient)的實例持久化。 |
void |
persist(String entityName, Object object)
將一個自由狀態(transient)的實例持久化。 |
void |
reconnect()
不推薦的。 手工的重新連接只應用于應用程序提供連接的情況,在這種情況下或許應該使用reconnect(java.sql.Connection) 。 |
void |
reconnect(Connection connection)
重新連接到給定的JDBC連接。 |
void |
refresh(Object object)
從數據庫中重新讀取給定實例的狀態。 |
void |
refresh(Object object, LockMode lockMode)
根據指定的鎖定模式(LockMode),從數據庫中重新讀取給定實例的狀態。 |
void |
replicate(Object object, ReplicationMode replicationMode)
使用當前的標識值持久化給定的游離狀態(Transient)的實體。 |
void |
replicate(String entityName, Object object, ReplicationMode replicationMode)
使用當前的標識值持久化給定的游離狀態(Transient)的實體。 |
Serializable |
save(Object object)
首先為給定的自由狀態(Transient)的對象(根據配置)生成一個標識并賦值,然后將其持久化。 |
Serializable |
save(String entityName, Object object)
首先為給定的自由狀態(Transient)的對象(根據配置)生成一個標識并賦值,然后將其持久化。 |
void |
saveOrUpdate(Object object)
根據給定的實例的標識屬性的值(注:可以指定unsaved-value。一般默認null。)來決定執行 save() 或update()操作。 |
void |
saveOrUpdate(String entityName, Object object)
根據給定的實例的標識屬性的值(注:可以指定unsaved-value。一般默認null。)來決定執行 save() 或update()操作。 |
void |
setCacheMode(CacheMode cacheMode)
設置刷新提交模式。 |
void |
setFlushMode(FlushMode flushMode)
設置刷新提交模式。 |
void |
setReadOnly(Object entity, boolean readOnly)
將一個未經更改的持久化對象設置為只讀模式,或者將一個只讀對象標記為可以修改的模式。 |
void |
update(Object object)
根據給定的detached(游離狀態)對象實例的標識更新對應的持久化實例。 |
void |
update(String entityName, Object object)
根據給定的detached(游離狀態)對象實例的標識更新對應的持久化實例。 |