Hibernate框架學(xué)習(xí)(環(huán)境搭建)

環(huán)境搭建簡(jiǎn)單記錄:下載對(duì)應(yīng)操作系統(tǒng)的eclipse,裝上Hinbernate插件,導(dǎo)入相應(yīng)jar包。

步驟:
1.新建一個(gè)普通的Java項(xiàng)目
2.在src目錄下添加配置文件
# hibernate.cfg.xml
3.編寫(xiě)持久化類(lèi)(實(shí)體類(lèi))
# Students.java
持久化類(lèi)的設(shè)計(jì)原則要遵循javabean的設(shè)計(jì)原則,設(shè)計(jì)原則有四點(diǎn):
# 這個(gè)類(lèi)是一個(gè)公有類(lèi)
# 提供公有的不帶參數(shù)的默認(rèn)的構(gòu)造方法
# 屬性要私有化private
# 屬性要用setter/getter封裝
4.創(chuàng)建 對(duì)象-關(guān)系映射文件和數(shù)據(jù)庫(kù)
# Students.hbm.xml 和 db_hibernate
5.使用Junit測(cè)試,測(cè)試能否通過(guò)HibernateAPI以面向?qū)ο蟮姆绞讲僮鲾?shù)據(jù)庫(kù)
6.通過(guò)HibernateAPI訪問(wèn)數(shù)據(jù)庫(kù).

<code>

import java.util.Date;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class StudentsTest {

private SessionFactory sessionFactory;
private Session session;
private Transaction transaction;

@Before
public void init() {
    //創(chuàng)建配置對(duì)象
    Configuration config = new Configuration().configure();
    //創(chuàng)建服務(wù)注冊(cè)對(duì)象
    ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().
            applySettings(config.getProperties()).buildServiceRegistry();
    //創(chuàng)建會(huì)話工廠對(duì)象
    sessionFactory = config.buildSessionFactory(serviceRegistry);
    //會(huì)話對(duì)象
    session = sessionFactory.openSession();
    //開(kāi)啓事務(wù)
    transaction = session.beginTransaction();
}

@After
public void destory() {
    transaction.commit();//提交事務(wù)
    session.close();//關(guān)閉會(huì)話
    sessionFactory.close();//關(guān)閉會(huì)話工廠
}

@Test
public void testSaveStudents() {
    //生成學(xué)生對(duì)象
    Students s = new Students(1, "隔壁老王", "男", new Date(), "北京");
    session.save(s);
}

}
</code>

測(cè)試通過(guò)后,可以發(fā)現(xiàn)數(shù)據(jù)庫(kù)上已經(jīng)有了數(shù)據(jù).

圖片.png
最后編輯于
?著作權(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)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類(lèi)相關(guān)的語(yǔ)法,內(nèi)部類(lèi)的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚(yú)_t_閱讀 34,740評(píng)論 18 399
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,641評(píng)論 19 139
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,017評(píng)論 0 11
  • 對(duì)象保存在內(nèi)存中,內(nèi)存不能永久保存數(shù)據(jù),如果要永久保存就需要對(duì)象持久化(將對(duì)象存儲(chǔ)到數(shù)據(jù)庫(kù)中).關(guān)系型數(shù)據(jù)庫(kù)存放關(guān)...
    liangxifeng833閱讀 1,759評(píng)論 0 2
  • 又開(kāi)新坑了,最近迷上了爬蟲(chóng),塞爾達(dá),數(shù)據(jù)結(jié)構(gòu)。。。時(shí)間不夠用了已經(jīng)。 近幾天簡(jiǎn)單的學(xué)習(xí)了Scrapy這個(gè)框架,簡(jiǎn)單...
    NSLogHome閱讀 692評(píng)論 0 1

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