初識Hibernate
小編:管理員 434閱讀 2022.09.14
- 2
- 1,575 views
- A+
所屬分類:Hibrenate
其實之前也是了解過Hibernate,但是現在博主為了避免手高眼低的情況發生,決定對陌生的Hibernate再次造訪,之前的博文是從朋友(imfuwei.com)那里偷過來的。所以不是我自己去學習的,現在我自己學習了一下,然后我在完善一下Hibernate。 Hibernate的作者是Gavin King。其原是Jboss下的一名員工,因為Hibernate的緣故,整個公司被redhat收購,詳情去百度,本博主不講故事。 目前用的是官方最新版的5.2.10環境,配合MySQL數據庫以及其Driver For Java還有就是Junit(一個單元測試工具)后面打包Jar包。

Hibernate工作原理?不存在的,我也不知道的,簡單繪個小圖吧

畫不來 偷了一張
Hibernate數據連接重點(我認為)
DB連接四要素
方言
C3P0數據庫源
當前Session上下文
1.Thread
2.Jpa(Java事務API) 座分布式用
3.Spring Session Context(整合框架會用到)
接下來,就是配置Hibernate.hbm.xml配置文件
首先找到配置映射約束文件
hibernate-core-5.2.10.Final.jar
這個Jar包的org.hibernate包里面包含著約束文件,如兩圖所示


configuration是我們要的配置文件,Mapping是映射文件,所以先從configuration開刀
我用的dtd,紅框勾選的地方

新建一個hibernate.cfg.xml在Src跟目錄下
然后復制以下代碼
然后就是新建一個beans包
新建一個student類,大家都懂
private Integer id; private String name; private Double score;
最后新建一個student.hbm.xml
然后test //1.加載主配置文件 Configuration cfg = new Configuration().configure(); //2.創建Session工廠 SessionFactory sf = cfg.buildSessionFactory(); //3.獲取session Session session = sf.getCurrentSession(); Student student = new Student(); student.setId(1); student.setName("張三"); student.setScore(99.5); //4.開啟事務 try { session.beginTransaction(); session.save(student); session.getTransaction().commit(); } catch (Exception e) { // TODO Auto-generated catch block //事務回滾 session.getTransaction().rollback(); }
然后結束

最后完美
相關推薦
- 經典筆試題-JDBC及Hibernate篇 五、JDBC 及Hibernate:(共12 題:基礎10 道,中等難度2 道)110、數據庫,比如100 用戶同時來訪,要采取什么技術解決?【基礎】 答:可采用連接池。111、什么是ORM?【基礎】 答:對象關系映射(Object—Relational Mapping,簡稱ORM)是一種為了解決面向對象…
- Hibernate Criterion 在查詢方法設計上能夠靈活的依據Criteria的特點來方便地進行查詢條件的組裝.Hibernate設計了CriteriaSpecification作為Criteria的父接口,以下提供了Criteria和DetachedCriteria.Criteria和DetachedCriteria的主要差別在于創建的形式不一樣,Criteria是在線的,所…