麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Hibernate 的原理與配置快速入門

2019-11-18 14:24:32
字體:
來源:轉載
供稿:網友
Hibernate 的原理與配置快速入門(圖一)  也許你聽說過Hibernate的大名,但可能一直不了解它,也許你一直渴望使用它進行開發,那么本文正是你所需要的!在本文中,我向大家重點介紹Hibernate的核心API調用庫,并講解一下它的基本配置。

  看完本文后,我相信你對什么是ORM(對像/關系映射)以及它的優點會有一個深刻的熟悉,我們先通過一個簡單的例子開始來展現它的威力。

  正如一些傳統的經典計算機文章大都會通過一個“hello,world”的例子開始講解一樣,我們也不例外,我們也將從一個相對簡單的例子來闡述Hibernate的開發方法,但假如要真正闡述Hibernate的一些重要思想,僅僅靠在屏幕上打印一些字符是遠遠不夠的,在我們的示例程序中,我們將創建一些對象,并將其保存在數據庫中,然后對它們進行更新和查詢。

閱讀導航
“Hello World”“Hello world”示例程序讓您對Hibernate有一個簡單的熟悉。理解Hibernate的架構介紹Hibernate接口的主要功能。核心接口Hibernate有5個核心接口,通過這幾個接口開發人員可以存儲和獲得持久對象,并且能夠進行事務控制一個重要的術語:TypeType是Hibernate發明者發明的一個術語,它在整個構架中是一個非?;A、有著強大功能的元素,一個Type對象能將一個java類型映射到數據庫中一個表的字段中去。策略接口Hibernate與某些其它開源軟件不同的還有一點――高度的可擴展性,這通過它的內置策略機制來實現?;A配置Hibernate可以配置成可在任何Java環境中運行,一般說來,它通常被用在2-3層的C/S模式的項目中,并被部署在服務端。創建一個sessionFactory對象要創建一個SessionFactory對象,必須在Hibernate初始化時創建一個Configuration類的實例,并將已寫好的映射文件交由它處理。
“Hello World”

  Hibernate應用程序定義了一些持久類,并且定義了這些類與數據庫表格的映射關系。在我們這個“Hello world”示例程序中包含了一個類和一個映射文件。讓我們看看這個簡單的持久類包含有一些什么?映射文件是怎樣定義的?另外,我們該怎樣用Hibernate來操作這個持久類。

  我們這個簡單示例程序的目的是將一些持久類存儲在數據庫中,然后從數據庫取出來,并將其信息正文顯示給用戶。其中Message正是一個簡單的持久類:,它包含我們要顯示的信息,其源代碼如下:

  列表1 Message.Java 一個簡單的持久類

package hello;
public class Message {
 PRivate Long id;
 private String text;
 private Message nextMessage;
 private Message() {}
 public Message(String text) {
  this.text = text;
 }
 public Long getId() {
  return id;
 }
 private void setId(Long id) {
  this.id = id;
 }
 public String getText() {
  return text;
 }
 public void setText(String text) {
  this.text = text;
 }
 public Message getNextMessage() {
  return nextMessage;
 }
 public void setNextMessage(Message nextMessage) {
  this.nextMessage = nextMessage;
 }
}
  Message類有三個屬性:Message的id 、消息正文、以及一個指向下一條消息的指針。其中id屬性讓我們的應用程序能夠唯一的識別這條消息,通常它等同于數據庫中的主鍵,假如多個Message類的實例對象擁有相同的id,那它們代表數據庫某個表的同一個記錄。在這里我們選擇了長整型作為我們的id值,但這不是必需的。Hibernate答應我們使用任意的類型來作為對象的id值,在后面我們會對此作具體描述。

  你可能注重到Message類的代碼類似于JavaBean的代碼風格,并且它有一個沒有參數的構造函數,在我們以后的代碼中我將繼續使用這種風格來編寫持久類的代碼。

  Hibernate會自動治理Message類的實例,并通過內部機制使其持久化,但實際上Message對象并沒有實現任何關于Hibernate的類或接口,因此我們也可以將它作為一個普通的Java類來使用:

Message message = new Message("Hello World");
System.out.println( message.getText() );
  以上這段代碼正是我們所期望的結果:它打印“hello world”到屏幕上。但這并不是我們的最終目標;實際上Hibernate與諸如EJB容器這樣的環境在持久層實現的方式上有很大的不同。我們的持久類(Message類)可以用在與容器無關的環境中,不像EJB必須要有EJB容器才能執行。為了能更清楚地表現這點,以下代碼將我們的一個新消息保存到數據庫中去:



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 免费在线观看午夜视频 | 午夜男人免费视频 | 久久久资源网 | 亚洲精品3 | 一级毛片在线免费观看视频 | 欧美精品一级 | 成人免费视频视频在线观看 免费 | 亚洲国产中文字幕 | 一级做a爱片久久毛片a高清 | 久久精品亚洲欧美日韩精品中文字幕 | 欧美77| 激情亚洲网| 欧美一级片 在线播放 | 日韩黄色成人 | 一级免费毛片 | 成人国产在线视频 | 成人毛片网 | 久久男| 欧美亚洲综合在线 | 久久影院国产精品 | 九九热视频在线免费观看 | 欧美乱码精品一区 | 毛片视频网站 | 女人久久久www免费人成看片 | 性爱视频免费 | 午夜人体| vidz 98hd | 久久久www成人免费精品 | 日本道中文字幕 | 久久精品久| 叉逼视频 | 成年人精品视频 | 欧美精品在线视频观看 | 国产亚洲精品久久久久婷婷瑜伽 | 午夜男人免费视频 | 亚洲网站免费观看 | 国产午夜精品一区二区三区不卡 | 亚洲网站免费观看 | 羞羞视频2023 | 少妇一级淫片免费放播放 | 日本最新免费二区三区 |