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

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

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

    posts - 165, comments - 198, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    hibernate + Myeclipes 敏捷(小例)

    Posted on 2007-12-11 17:51 G_G 閱讀(1682) 評論(1)  編輯  收藏 所屬分類: hibernate
    對hbn深入過程中,發(fā)現(xiàn)開發(fā)和設(shè)計持久層 到項目后期,越來越困難。在次仔細查分析。特總結(jié)一種開發(fā)方法。留下與大家分享,歡迎拍磚。

    開發(fā)過程描述:

    1.使用 MyEclipes -> uml? 創(chuàng)建類圖
    2.用 Generate java Code 根據(jù)類圖生成 java文件
    3.使用 Xdoclet 添加 Hbn 標簽
    4.配置myEclipes -> XDoclet 自動生成 mapping.hbn.xml
    5.使用myEclipes 把項目轉(zhuǎn)化成 hibernate? 項目
    6.使用 org.hibernate.tool.hbm2ddl.SchemaExport 建表

    開發(fā)過程好處:

    1)完全是面向?qū)ο螅恍枰獙憍ml配置文件(XDoclet);
    2)項目后期修改容易面對uml
    3)用myEclipes 這些都不用去找,直接拿來用(uml,XDoclet,hibernate ..)

    下面就來個 小例把
    1.MyEclipes 使用 uml 參考->MyEclipse 5.5 UML 入門視頻 (作者:BeanSoft)


    2.由uml生成類文件


    3.先使用 eclipes的 快鍵方法寫 get/set 方法, 類文件文件添加 hbn XDoclet的注解
    package?bean;

    /**?
    ?*?@hibernate.class?table="t1oo"
    ?
    */
    public?class?T1oo?{

    ??
    public?int?id;
    ??
    public?String?name;
    ??
    public?int?avg;
    ??
    ??
    /**?
    ???*?@hibernate.property?
    ???*?column="avg"
    ???*?length="4"
    ???*?not-null="true"
    ???
    */
    public?int?getAvg()?{
    ????
    return?avg;
    }
    public?void?setAvg(int?avg)?{
    ????
    this.avg?=?avg;
    }
    /**
    ?*?@hibernate.id?
    ?*?column="id"
    ?*?generator-class="hilo"
    ?
    */
    public?int?getId()?{
    ????
    return?id;
    }
    public?void?setId(int?id)?{
    ????
    this.id?=?id;
    }
    /**
    ?*?@hibernate.property?
    ?*?column="name"
    ?*?not-null="true"?
    ?*?
    @return
    ?
    */
    public?String?getName()?{
    ????
    return?name;
    }
    public?void?setName(String?name)?{
    ????
    this.name?=?name;
    }
    ??

    }

    4.用myEclipes 生成 XDoclet
    在項目點右鍵-> properties -> MyEclipse-XDoclet ->
    在Configuration 空白初點右鍵 選 add standard -> ... hbn 后面不太好描述 可以查下很簡單的 。配置好了運行后就可以看見 多了 個 T1oo.hbm.xml 文件;

    5.myEclipes + hbn 就不多說了
    6. hbn2java:
    ????public?void?testCreateTable()throws?Exception{
    ?????????HibernateSessionFactory.currentSession();
    ?????????HibernateSessionFactory.closeSession();
    ?????????
    ?????????Field[]?ff?
    =?HibernateSessionFactory.class.getDeclaredFields();
    ?????????Field?fie?
    =?null?;
    ?????????
    for(int?i=0;i<ff.length;i++){
    ?????????????
    if(?ff[i].getType().equals(?Configuration.class?)?){
    ?????????????????fie?
    =?ff[i];
    ?????????????}
    ?????????}
    ?????????fie.setAccessible(
    true);
    ?????????Configuration?cfg?
    =?(Configuration)fie.get(HibernateSessionFactory.class);
    ?????????cfg.addInputStream(?
    this.getClass().getResourceAsStream("/bean/T1oo.hbm.xml")?);
    ???????? //建表
    ??????????SchemaExport?dbExport?
    =?new?SchemaExport(cfg);
    ??????????dbExport.setOutputFile(
    "c:\\db\\test.txt");
    ??????????dbExport.create(
    true,?true);?
    ????}


    sql:
    drop table if exists t1oo
    drop table if exists hibernate_unique_key
    create table t1oo (
    ??? id integer not null,
    ??? avg integer not null,
    ??? name varchar(255) not null,
    ??? primary key (id)
    )
    create table hibernate_unique_key (
    ???? next_hi integer
    )
    insert into hibernate_unique_key values ( 0 )


    效果:
    mysql> show tables;
    +----------------------+
    | Tables_in_hbn??????? |
    +----------------------+
    | hibernate_unique_key |
    | t1oo???????????????? |
    +----------------------+
    2 rows in set (0.00 sec)




    評論

    # re: hibernate + Myeclipes 敏捷(小例)  回復(fù)  更多評論   

    2007-12-12 10:17 by happycat
    挺好,支持樓主。充分利用了myeclipse工具,順序掌握的合適。
    主站蜘蛛池模板: 免费黄色网址入口| 最近2019中文字幕免费直播| 天天操夜夜操免费视频| 亚洲精品永久www忘忧草| 99精品免费观看| 91亚洲国产成人精品下载| 2019中文字幕在线电影免费| 亚洲国产美国国产综合一区二区 | 亚洲综合精品伊人久久| 美女视频黄是免费的网址| 亚洲AV综合永久无码精品天堂| 国产在线a免费观看| 亚洲婷婷第一狠人综合精品| 无码人妻精品一二三区免费| 亚洲中文无码mv| 国产一区二区免费在线| 免费人成大片在线观看播放| 男人的天堂网免费网站| 久久丫精品国产亚洲av| 可以免费看的卡一卡二| 亚洲AV无码国产一区二区三区| 国产a级特黄的片子视频免费| 久青草国产免费观看| 久久亚洲高清观看| 自拍偷自拍亚洲精品播放| 亚洲福利在线播放| 国产无遮挡裸体免费视频在线观看| 亚洲一二成人精品区| 国产无人区码卡二卡三卡免费| 亚洲免费网站观看视频| 亚洲国产精品无码久久久久久曰| jizz免费观看视频| 亚洲国产精品综合久久网各| 久草免费福利在线| 亚洲无圣光一区二区| 四虎影在线永久免费四虎地址8848aa | 亚洲熟妇AV一区二区三区宅男| 国产精品黄页在线播放免费| 麻豆安全免费网址入口| 日韩一区二区免费视频| 精品无码一级毛片免费视频观看 |