<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 閱讀(1672) 評論(1)  編輯  收藏 所屬分類: hibernate
    對hbn深入過程中,發(fā)現(xiàn)開發(fā)和設計持久層 到項目后期,越來越困難。在次仔細查分析。特總結一種開發(fā)方法。留下與大家分享,歡迎拍磚。

    開發(fā)過程描述:

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

    開發(fā)過程好處:

    1)完全是面向?qū)ο?,不需要寫xml配置文件(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 敏捷(小例)  回復  更多評論   

    2007-12-12 10:17 by happycat
    挺好,支持樓主。充分利用了myeclipse工具,順序掌握的合適。
    主站蜘蛛池模板: 国产免费一级高清淫曰本片| 亚洲AV日韩综合一区| 中文在线观看永久免费| 亚洲成a人片在线观看国产| 亚洲а∨精品天堂在线| 成全视频免费高清| 亚洲精品无码人妻无码| 免费的一级片网站| 亚洲爆乳大丰满无码专区| 在线成人a毛片免费播放| 亚洲精品V天堂中文字幕| 国产乱弄免费视频| 永久免费精品影视网站| 亚洲一区二区三区在线观看精品中文| free哆拍拍免费永久视频| 国产综合亚洲专区在线| 华人在线精品免费观看| 久久精品国产亚洲av四虎| 毛片免费全部播放无码| 亚洲人成图片网站| 亚洲av午夜福利精品一区| 波多野结衣免费一区视频 | 亚洲国产一成久久精品国产成人综合 | 久久精品国产亚洲AV电影| 无码人妻一区二区三区免费手机| 亚洲综合无码一区二区痴汉| 免费a级毛片无码a∨性按摩| 国产一级a毛一级a看免费视频| 久久亚洲AV成人出白浆无码国产| 野花高清在线观看免费3中文 | 国产亚洲精品a在线观看app| 91在线手机精品免费观看| 亚洲欧美第一成人网站7777| 亚洲第一区精品观看| 国产精品免费一区二区三区四区| 亚洲AV无码一区二区三区人 | 免费人成在线观看69式小视频| 国产精品亚洲一区二区麻豆| 亚洲人成影院在线观看| 亚洲高清一区二区三区电影| 国产亚洲精品成人AA片新蒲金 |