hibernate常用的API

1、Configuration

圖片.png
Configuration cfg = new Configuration();
        cfg.configure();

2、sessionFactory

圖片.png
public class HibernateUtils {
    private static final Configuration cfg;
    private static final SessionFactory sessionFactory;
    
    static {
        cfg = new Configuration();
        cfg.configure();
        sessionFactory = cfg.buildSessionFactory();
    }
    
    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }

}

3、session

圖片.png

4、transaction

圖片.png

5、再議實(shí)體類的編寫規(guī)則

1、屬性是私有的,并且都有相應(yīng)的get和set方法。
2、(hibernate特有的)必須有一個(gè)屬性是作為一個(gè)實(shí)體的唯一值。
3、實(shí)體類屬性在hibernate里面建議不使用基本類型,而是建議使用基本類型的包裝類。
int->Integer
char->Character
其他的都是首字母大寫就OK了
之所以用包裝類的原因是:比如有學(xué)生參加考試,缺考可以直接用null值表示。

6、主鍵選擇策略

圖片.png

7、實(shí)體類操作

添加操作:

User user = new User();
        user.setUsername("winney");
        user.setPassword("1256");
        user.setAddress("GZ");
        session.save(user);

查詢操作:

圖片.png

修改操作:

圖片.png

刪除操作:

圖片.png

7、實(shí)體類狀態(tài)

1、瞬時(shí)態(tài)
實(shí)體沒(méi)有id值,與session沒(méi)有關(guān)系
2、持久態(tài)
實(shí)體有id值,且通過(guò)session查詢出來(lái)
3、托管態(tài)
有id值,但是和session沒(méi)有關(guān)系

saveOrUpdate()方法會(huì)根據(jù)實(shí)體對(duì)象的狀態(tài)來(lái)調(diào)用是添加還是更新。
實(shí)體類對(duì)象狀態(tài)是瞬時(shí)態(tài),方法做的是添加操作。
實(shí)體類對(duì)象狀態(tài)是托管態(tài),方法做的是更新操作。
實(shí)體類對(duì)象狀態(tài)是持久態(tài),方法做的是更新操作。

8、hibernate一級(jí)緩存

hibernate
圖片.png

二級(jí)緩存已經(jīng)被redis替代了:
二級(jí)緩存默認(rèn)是不打開(kāi)的,要配置,緩存范圍是整個(gè)sessionFactory范圍。

圖片.png
圖片.png

8、事務(wù)操作的規(guī)范寫法

圖片.png

9、綁定本地線程session

1、首先配置核心配置文件
<property name="hibernate.current_session_context_class">thread</property>
2、重寫HibernateUtils類
添加getSession方法

    public static Session getSession() {
        return sessionFactory.getCurrentSession();
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容