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

首頁 > 開發 > 綜合 > 正文

Eclipse快速上手Hibernate--3. 利用XDoclet開發

2024-07-21 02:14:09
字體:
來源:轉載
供稿:網友
    這篇文章是上兩篇文章《eclipse快速上手hibernate--1. 入門實例》和《eclipse快速上手hibernate--2. 利用hbm映射文件開發》的延續,主要說的是如何利用xdoclethbm映射文件產生hbm映射文件及數據表。可以參考xdoclet文檔中關于hibernate的部分和夏昕編寫的《hibernate開發指南》。同樣,這篇文章沒有過多談理論,只是給出了一個完整的實例加以說明。相關配置請參考上兩篇文章。  1. 創建項目 ·  新建一個java項目:hibernatebegin_3,注意選中“創建單獨的源文件夾和輸出文件夾”,同時添加“用戶庫”:hibernate。  2.  文件user.java ·  新建一個類,包名:javamxj.hibernate,類名:user。然后在生成的代碼中添加變量,再利用“生成 getter 和 setter”,具體方式同《eclipse快速上手hibernate--1. 入門實例 》文章中的編輯user.java的方式一樣。   ·  添加hibernatedoclet標記,關于如何利用jboss-ide添加xdoclet標記的技巧參考《eclipse快速上手ejb -- 1. lomboz + jboss-ide 配置2 》文中的關于jboss-ide的部分,這是添加hibernatedoclet后的代碼: 
user.java

/* * 采用hibernatedoclet開發一個簡單的hibernate實例 * 創建日期 2005-3-31 * @author javamxj(分享java快樂) * @link blog: htpp://javamxj.mblogger.cn * htpp://blog.csdn.net/javamxj/ */package javamxj.hibernate;/** * @hibernate.class table = "usertable3" */public class user {private int id;private string username;private string password; /** * @hibernate.id * column = "id" * generator-class = "hilo" */public int getid() {return id;}public void setid(int id) {this.id = id;}/** * @hibernate.property * length = "24" * not-null = "true" */public string getpassword() {return password;}public void setpassword(string password) {this.password = password;}/** * @hibernate.property * column = "用戶名" * length = "24" * not-null = "true" */public string getusername() {return username;}public void setusername(string username) {this.username = username;}}
  ·  添加類標記“ @hibernate.class table ="usertable3" ”用來生成數據庫的表usertable3。·  “ @hibernate.id"用來生成主鍵,注意這里采用是hilo(高低位)生成器,需要額外的數據庫表保存主鍵生成歷史狀態。·  “ @hibernate.property”描述pojo中屬性與數據庫表字段之間的映射關系。   ●  更新xdoclet-hibernate-module ·  將xdoclet1.2.2中的xdoclet-hibernate-module-1.2.2.jar復制到jbosside-1.4.1-e30/eclipse/plugins/org.jboss.ide.eclipse.xdoclet.core_1.4.1目錄中,并且刪除其目錄下的xdoclet-hibernate-module-1.2.1.jar文件,然后在eclipse界面中,窗口 ->首選項 ->jboss-ide ->xdoclet ->code assist:點擊右側的“refresh xdoclet data”欄,即可完成更新。如果要替換其它的模塊,步驟與此類似。  3. 項目結構 · 將上篇文章中的“build.xml”復制到項目根目錄下,配置文件“hibernate.cfg.xml”復制到src目錄下,這時的項目結構如圖:  4. 運行任務 ·  雙擊“generate-hbm”任務,然后按一下“f5”功能鍵刷新一下包“javamxj.hibernate”,應該可以看到這個包下的“user.hbm.xml”。文件如下:
user.hbm.xml
<?xml version="1.0" encoding="gbk"?><!doctype hibernate-mapping public    "-//hibernate/hibernate mapping dtd 2.0//en"     "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"><hibernate-mapping>    <class        name="javamxj.hibernate.user"        table="usertable3"        dynamic-update="false"        dynamic-insert="false"        select-before-update="false"        optimistic-lock="version"    >        <id            name="id"            column="id"            type="int"        >            <generator class="hilo">              <!--                    to add non xdoclet generator parameters, create a file named                   hibernate-generator-params-user.xml                   containing the additional parameters and place it in your merge dir.               -->             </generator>        </id>        <property            name="password"            type="java.lang.string"            update="true"            insert="true"            access="property"            column="password"            length="24"            not-null="true"        />        <property            name="username"            type="java.lang.string"            update="true"            insert="true"            access="property"            column="用戶名"            length="24"            not-null="true"        />        <!--            to add non xdoclet property mappings, create a file named                hibernate-properties-user.xml            containing the additional properties and place it in your merge dir.        -->    </class></hibernate-mapping>   ●  生成數據表·  啟動mysql,應該確定含有hibernatetest數據庫,不過這次不需要建立數據表了。·  雙擊“schemaexport”任務,然后刷新項目根目錄,會發現出產生的“schema-export.sql”文件。 schema-export.sqldrop table if exists usertable3drop table if exists hibernate_unique_keycreate table usertable3 (   id integer not null,   password varchar(24) not null,   用戶名 varchar(24) not null,   primary key (id))create table hibernate_unique_key (    next_hi integer )insert into hibernate_unique_key values ( 0 ) ·  切換到數據庫中,會發現已經自動產生了數據表usertable3和hibernate_unique_key:    5. 測試程序 好了,將上篇文章中的test.java文件復制到包“javamxj.hibernate”下,然后右擊運行這個文件,可以看到數據表中生成的數據(圖中的數據是連續運行4次后產生的)。   6. log4j    log4j是一個開放源碼的項目。它允許開發員以任意的間隔來控制日志的輸出。它通過設在外部的配置文件而達到運行時靈活的設置。    運行log4j的庫文件都已經放到先前建立的hibernate庫文件夾中了,你只要找到下載的hibernate 2.1.8壓縮文件中的etc目錄,復制其中的log4j.properties文件到項目中的src目錄即可。 運行test.java,可以看到控制臺的輸出語句似乎和先前沒有用log4j沒有什么區別。 現在打開log4j.properties,找到“log4j.logger.net.sf.hibernate=info”語句,將其改成“log4j.logger.net.sf.hibernate=warn”,再次運行test.java,可以看到控制臺的輸出語句只有兩條了:21:03:55,687  warn configurator:125 - no configuration found. configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/d:/java/hibernate/lib/ehcache-0.9.jar!/ehcache-failsafe.xmlhibernate: insert into usertable3 (password, 用戶名, id) values (?, ?, ?)警告信息是指緩存配置文件沒有找到,以后用到時再談談這一點。 好了,hibernate結合log4j的使用就是這么簡單。關于log4j的使用,比較簡單,網上的資料也很多,自己可以google一下。   小結:  hibernate的開發相當靈活,可以采用多種方式開發。 ·  只有hbm映射文件:映射文件---hbm2java----java---schemaexport----數據表·  只有java:    java---xdoclet---hbm----schemaexport----數據表·  如果只有數據表呢?可以采用middlegen:                   數據表---middlegen---hbm----hbm2java----java      關于利用middlegen開發hibernate的方法,可以參考夏昕編寫的《hibernate開發指南》。   ·  至于有關hibernate的eclipse插件,也有很多,可以看看《working with hibernate in eclipse》。              

最大的網站源碼資源下載站,

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 保康县| 高雄县| 通道| 新营市| 陆河县| 法库县| 康定县| 沙河市| 石狮市| 奇台县| 嘉黎县| 九寨沟县| 南华县| 上思县| 莆田市| 新巴尔虎右旗| 威远县| 长沙县| 嘉义县| 林西县| 紫金县| 昭通市| 安新县| 海门市| 望城县| 长乐市| 武城县| 西昌市| 景德镇市| 宜川县| 大同县| 礼泉县| 璧山县| 丰城市| 峨边| 瑞金市| 华宁县| 乌恰县| 隆化县| 克拉玛依市| 阳泉市|