<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks
    Apache Torque 是一個使用關系數據庫作為存儲手段的Java應用程序持久化工具。Torque是一個開源項目,由Web應用程序框架
      Jakarta Apache Turbine 發展而來,但現在已完全獨立于Turbine。通過JDBC,Torque支持大多數流行的開源商業數據庫,包括Oracle、Microsoft SQL Server、IBM DB/2、MySQL以及PostgreSQL。
      
      
      
      可以用Torque來為數據訪問層聲成Java代碼。也可以通過它從現存數據庫中取出Java對象(逆向工程),前提是你擁有一個現存的數據訪問對象(DAO)層。對于新的項目來說,如果你用XML為你的業務對象建模,Torque將生成創建數據庫表的SQL腳本以及用來讀取、寫入和查詢數據的Java對象。
      
      J2EE程序員對于持久化層有很多不錯的選擇。( 這里 列舉了其它的方法。)我們的重點是Torque所提供的功能以及怎樣使它工作起來。本文的示例代碼可以 在此 下載。
      
      使用Torque生成數據訪問層和值對象
      Torque有兩大組成部分——生成組件和運行時組件??梢杂肨orque來生成值對象、SQL表的創建腳本以及數據訪問層。 Apache Ant
      或者 Apache Maven 都能運行Torque生成器。在本文中,我選用了Ant。
      
      Torque能輕松維護代碼是因為值對象、數據訪問對象和SQL代碼全部是從一個被稱為schema的XML文件生成的。將此文件命名為yourprojectname-schema.xml并將其放到Torque安裝目錄的schema子目錄中。這個XML文件包含了你的每個值對象,包括名字、屬性以及和其它對象的關系。這里的例子用到的XML schema文件叫作builder-schema.xml,在示例代碼中可以找到。注意在這里我們建立了一個從ProdUCt表到Vendor表的外鍵參考。這是因為一個供應商可以有很多產品,而每種產品都只有一個供應商。
      
      另一個重要的配置文件是Torque安裝目錄下的build.properties文件。必須編輯這個文件來添加項目名、使用的數據庫、必須的JDBC連接信息以及生成的類文件該放到那個包中。這個文件也包含在供下載的示例代碼中。
      
      在數據庫管理工具中創建一個庫,確保你的Apache Ant版本是1.5以上。將驅動JDBC的JAR文件放到Torque安裝目錄的lib子目錄中。然后在Torque目錄中運行下面的命令:
      
      ant -f build-torque.xml
      
      Torque應該將所有生成的類文件放到主安裝目錄下的src/java目錄中。而SQL腳本放在src/sql目錄中。
      生成的Java類和SQL腳本
      
      
      Torque將為schema XML文件中的每個對象創建5個Java類:
      
      Base Peer類
      Peer類(Base Peer類的擴展)
      Base Data Object類
      Data Object類(Base Data Object類的擴展)
      Map Builder類
      由于你可以編輯schema并返回生成的腳本,必須有一種方法來還原你所做的改動。Torque通過創建基類來解決這個問題,基類每次都重新生成,而擴展類只在不存在時才生成。應該將所有的代碼添加到擴展類中。而不應該編輯Base Peer、Base Data Object和Map Builder類。
      
      Base Data Object類包含了獲取和設置對象屬性以及將對象存入數據庫的方法。BaseVendor.java就是一個例子。Base Peer類包含了從數據庫中獲取、選擇、插入和刪除數據對象的方法。其例子是BaseVendorPeer.java。MapBuilder類被Peer類使用。
      
      Peer類和Data Object類是空的,必要的話可以添加或覆蓋方法來實現你的業務邏輯。(參見下載文件中的VendorPeer.java和Vendor.java。)
      
      創建的SQL腳本是針對你選用的數據庫的。每個數據庫都有一些微妙的特性,Torque必須處理全部這些。如果要更換數據庫的話,更新build.properties中的信息并重新生成類和SQL腳本。主要的SQL腳本生成在builder-schema.sql文件中。如果需要的話,Torque還能夠運行SQL腳本。如果選擇了Torque ID Broker方法(下面將會講到)那么要確信你還對數據庫運行了第二個ID方法。
      
      Criteria類
      在Torque中,使用名為Criteria的類來模擬SQL的WHERE語句。創建一個新的Criteria對象,并使用其方法來向它添加限制條件。
      
      ID方法
      Torque可以使用很多方法來為數據庫中的對象生成主鍵。這個例子中,我們使用Torque的ID Broker方法來生成鍵。這并不依賴數據庫的兼容性。如果想利用數據庫的內建功能,可以使用本地方法。每種數據庫都用不同的方法來為表中的每條記錄創建唯一的主鍵。也可以讓Torque不為表中的記錄聲稱主鍵。編寫一個有效對象映射最難的地方是將數據庫的主鍵和一個單獨的對象實例聯系起來,而使用Torque卻使它變得相當輕松。
      
      在應用程序中集成Torque
      一旦數據庫設置好并且擁有了生成類,就可以將Torque運用到程序中了。編輯Torque.properties文件以使用JDBC連接信息和項目名稱(builder)。確信在程序中用Torque.init()方法對Torque進行初始化。對于我們例子程序來說,將示范Vender和Product對象之間的一對多聯系。我們還將使用Peer類來銷毀Product對象。要獲取更多的信息,可以到 Troque Web Site 去查詢生成類的方法。
    posted on 2008-05-22 11:51 rogerfan 閱讀(374) 評論(0)  編輯  收藏 所屬分類: 【Torque學習】
    主站蜘蛛池模板: 亚洲人成在线中文字幕| 亚洲成AV人片一区二区| 亚洲熟妇久久精品| 久久天天躁狠狠躁夜夜免费观看 | 凹凸精品视频分类国产品免费| 亚洲va成无码人在线观看| 51精品视频免费国产专区| 亚洲白色白色永久观看| 57pao一国产成永久免费| 亚洲最大的黄色网| 在线观看免费成人| 国产精品亚洲综合一区在线观看| 国产午夜免费福利红片| xvideos永久免费入口| 亚洲精品国产美女久久久| 日韩免费无码视频一区二区三区| 久久久亚洲欧洲日产国码二区 | 国产黄色免费网站| 亚洲高清一区二区三区| 国产在线播放免费| 一个人晚上在线观看的免费视频 | 亚洲无限乱码一二三四区| 男男AV纯肉无码免费播放无码| 亚洲真人无码永久在线观看| 免费v片在线观看品善网| 国产精品成人69XXX免费视频| 亚洲av无码专区国产乱码在线观看| 99热这里只有精品免费播放| 亚洲午夜无码久久| 亚洲精品线路一在线观看| 国产精品免费看久久久| 亚洲AV男人的天堂在线观看| 亚洲成?v人片天堂网无码| 久久国产乱子免费精品| 亚洲熟女综合色一区二区三区| 亚洲国产成人精品女人久久久 | 亚洲最大的成人网| 国产成人亚洲综合无码| 国产精品1024永久免费视频| 曰批免费视频播放免费| 亚洲欧洲国产综合|