国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

Kodo EJB:符合EJB3規(guī)范的持久層框架

2019-11-18 12:33:55
字體:
來源:轉載
供稿:網(wǎng)友

    Kodo是BEA公司收購SolarMetric公司后獲得的持久層框架項目,以前只是支持JDO標準,2006年2月13日,BEA公司公布發(fā)布Kodo項目的最新版本——Kodo 4.0.0 Early access 4,Kodo 4.0.0 EA4支持EJB3和JDO2兩個標準,本文中,我們將首先學習和了解KODO EJB,了解如何使用Kodo EJB完成開發(fā)工作。

    我們將按照兩種不同的情況講述如何使用Kodo EJB進行開發(fā),一種是通過命令行工具,另外一種是在Eclipse中使用Ant任務。

    關于EJB3和JDO2的更多內容請大家查看文章最后參考資源中的相關內容。

    為什么使用Kodo EJB

  
在Kodo EJB框架中,對象和關系數(shù)據(jù)庫之間的映射(對象-表,對象屬性-字段等)都是使用JDK5.0中的最新特性—注釋(Annotation)來提供,不再需要提供額外的配置文件。

    根據(jù)EJB3規(guī)范的要求,Kodo EJB除了支持在EJB容器中使用滿足重量級企業(yè)應用的需求之外,也支持在普通java應用中采用,提供輕量級的持久層框架。只不過當我們在EJB容器中使用Kodo EJB時我們需要更多的工作以便滿足EJB容器的要求。

    下載、安裝Kodo

  預備工作

  
由于Kodo是基于注釋機制的框架,我們必須使用JDK5.0完成開發(fā)工作。所以下載、安裝Kodo之前,請確保您已經(jīng)下載和安裝了JDK5.0.

    為了演示的需要,我們選擇MySQL數(shù)據(jù)庫作為持久化的目標數(shù)據(jù)庫,請大家自己到www.mysql.com下載最新的MySQL數(shù)據(jù)庫后安裝。

    下載、安裝Kodo

  Kodo的最新版本是Kodo 4.0.0 Early Access 4,目前大家可以到http://www.solarmetric.com/去下載試用版本,下載時需要注冊,你會得到30天的License.

    將下載的壓縮文件解壓到c:/kodo4目錄下(后面將使用%KODO_HOME%來引用這個目錄),打開%KODO_HOME%/bin/kodocmd.cmd文件,將其中的KODODIR設置為您的Kodo的安裝目錄,將JDKHOME設置為Java的安裝目錄。

    Kodo EJB實例

  
上面的工作完成以后,我們就可以開發(fā)Kodo EJB應用了,下面的例子將主要講述如何開發(fā)一個輕量級的Kodo EJB例子,支持在Java應用中的調用,而不依靠于EJB容器,關于如何在EJB容器中配置使用Kodo EJB是一個大的課題,作者將另外撰文具體論述。

    下面我們將用一個簡單的例子來說明創(chuàng)建Kodo EJB應用的典型步驟,實例中我們將創(chuàng)建名為Book的持久化對象,該對象將被持久化到本地的MySQL數(shù)據(jù)庫中。

    請大家注重的是,下面的說明都基于windows 2000操作系統(tǒng),假如您使用其它操作系統(tǒng),可能需要做出相應的變更。

    建立工程目錄在C:盤根目下創(chuàng)建名為KodoExamples的目錄,我們所有的類文件和配置都放在這個目錄下。

    創(chuàng)建持久化類新創(chuàng)建持久化類Book,為了說明的簡單,該類只有兩個屬性:id和name,其中id是書的編號(編號由MySQL數(shù)據(jù)庫自動生成),name屬性表示書的名稱。持久化類的全部代碼、注釋和說明如下: ackage org.vivianj.kodo.examples.beans;import javax.persistence.Basic;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;import javax.persistence.Inheritance;import javax.persistence.InheritanceType;import javax.persistence.Table;

    /** * Book 用于表征系統(tǒng)中的書籍對象,他有兩個屬性id - 書籍編號,書籍編號將由MySQL數(shù)據(jù)庫自動生成name - 書名*/ /* Entity注釋表示該類是持久化類,的name屬性是該實體在查詢中對應的唯一名稱,默認是類名 */(name = "Book")

    /* Table注釋的name屬性指定該持久化類對應的數(shù)據(jù)表的名稱,默認數(shù)據(jù)表名和類名保持一致,為了增強代碼的可移植性,建議大家在name屬性中使用大寫英文字母 */(name = "BOOKS")



發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 临西县| 绍兴县| 资阳市| 科技| 资中县| 独山县| 馆陶县| 甘孜县| 汤阴县| 福安市| 凌云县| 德惠市| 龙陵县| 正宁县| 南昌县| 武平县| 盘山县| 安徽省| 蛟河市| 平罗县| 潮州市| 锡林浩特市| 福鼎市| 富宁县| 安图县| 阳东县| 黔东| 敖汉旗| 鹤峰县| 新源县| 上饶县| 苍梧县| 仁怀市| 师宗县| 嵩明县| 监利县| 探索| 抚远县| 渭南市| 万安县| 循化|