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

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

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

    dyerac  
    dyerac In Java
    公告

    日歷
    <2006年8月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789
    統計
    • 隨筆 - 36
    • 文章 - 10
    • 評論 - 94
    • 引用 - 0

    導航

    常用鏈接

    留言簿(5)

    隨筆分類(49)

    隨筆檔案(36)

    文章分類(11)

    文章檔案(10)

    相冊

    dyerac

    搜索

    •  

    積分與排名

    • 積分 - 79220
    • 排名 - 705

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

     

    整合hibernate和spring這樣的文章已經很多了,下面我們來看看如何利用myeclipse的功能為整合提速咯

    1.首先,創建工程,可以直接選創建J2EE web工程
    ?? (這....就不用貼圖了吧)

    2.導入spring, 選擇myeclipse的add spring capabilities,注意把copy .....打勾(注,如果想要在spring的配置文件中配置hibernate的話, 一定要先導入spring)




    3. 導入hibernate, 選擇myeclipse的add hibernatecapabilities,注意把copy .....打勾




    這時,myeclipse檢測到已有spring,會問如何處理hibernate配置信息,? 這里, 我們選擇把hibernate的配置信息寫在spring的配置信息中



    接著,既然選擇把在spring配置文件中配置hibernate信息,就需要設置hibernate的sessionfactory在配置文件中的bean id, 這里, 就設置為sessionFactory




    然后要配置sessionFactory對應的數據源,注,數據源對應的bean id也需要設置,可以簡單設置為dataSource
    就不貼圖咯




    最后,選擇sessionfactory對于的實現類,可以就用spring提供的LocalSessionFactory



    這樣, 我們就在項目中添加了spring和hibernate并將他們給予整合咯

    3.應用:
    ? 配置好了環境,我們當然還得應用咯.下面給出我的代碼
    首先創建pojo和對應的hbm.xml

    package ?mapping;

    public ? class ?Test? {

    ????
    public ?Test()? {
    ????????
    super ();
    ????????
    // ?TODO?Auto-generated?constructor?stub
    ????}


    ????
    private ? int ?id;
    ????
    ????
    private ?String?name;

    ????
    public ? int ?getId()? {
    ????????
    return ?id;
    ????}


    ????
    public ? void ?setId( int ?id)? {
    ????????
    this .id? = ?id;
    ????}


    ????
    public ?String?getName()? {
    ????????
    return ?name;
    ????}


    ????
    public ? void ?setName(String?name)? {
    ????????
    this .name? = ?name;
    ????}

    ????
    ????
    }


    <? xml?version="1.0" ?>
    <! DOCTYPE?hibernate-mapping?PUBLIC?"-//Hibernate/Hibernate?Mapping?DTD?3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
    >

    < hibernate-mapping? default-lazy ="false" ??auto-import ="true" ?package ="mapping" >
    ???
    < class? table ="test" ?name ="Test" >
    ?????
    < id? name ="id" ?column ="test_id" ?type ="int" >
    ???????
    < generator? class ="native" ></ generator >
    ?????
    </ id >
    ?????
    ?????
    < property? name ="name" ?type ="string" ?column ="name" ></ property >
    ???
    </ class >
    </ hibernate-mapping >


    然后開發對應的DAO操作pojo, 因為我比較懶,所以直接使用HibernateTemplate進行操作

    package?mapping;
    ?
    import?java.util.List;

    import?org.hibernate.Criteria;
    import?org.springframework.orm.hibernate3.HibernateTemplate;

    public?class?TestDAO?{

    ????
    private?HibernateTemplate?hibernateTemplate;

    ????
    public?TestDAO()?{
    ????????
    super();
    ????????
    //?TODO?Auto-generated?constructor?stub
    ????}


    ????
    public?Test?getTest(String?name)?throws?Exception?{
    ????????Test?t
    =new?Test();
    ????????t.setName(name);
    ????????List?list?
    =?this.getHibernateTemplate().findByExample(t);
    ????????
    if?(list.isEmpty())
    ????????????
    throw?new?Exception("No?Such?Record");
    ????????
    else
    ????????????
    return?(Test)?list.get(0);
    ????}


    ????
    public?void?addTest(String?name)?{
    ????????Test?test?
    =?new?Test();
    ????????test.setName(name);
    ????????
    this.getHibernateTemplate().save(test);
    ????}


    ????
    public?void?updateTest(Test?test){
    ????????
    this.getHibernateTemplate().update(test);
    ????}

    ????
    ????
    public?void?deleteTest(Test?test){
    ????????
    this.getHibernateTemplate().delete(test);
    ????}

    ????
    ????
    public?HibernateTemplate?getHibernateTemplate()?{
    ????????
    return?hibernateTemplate;
    ????}


    ????
    public?void?setHibernateTemplate(HibernateTemplate?ht)?{
    ????????
    this.hibernateTemplate?=?ht;
    ????}

    }

    ?

    相應的,還需要修改下spring的配置文件

    <?xml?version="1.0"?encoding="UTF-8"?>
    <!DOCTYPE?beans?PUBLIC?"-//SPRING//DTD?BEAN//EN"?"http://www.springframework.org/dtd/spring-beans.dtd">

    <beans>
    ?

    ????
    <bean?id="dataSource"?class="org.apache.commons.dbcp.BasicDataSource">
    ????????
    <property?name="driverClassName">
    ????????????
    <value>com.mysql.jdbc.Driver</value>
    ????????
    </property>
    ????????
    <property?name="url">
    ????????????
    <value>jdbc:mysql://localhost:3306/nirvana?useUnicode=true</value>
    ????????
    </property>
    ????????
    <property?name="username">
    ????????????
    <value>dyerac</value>
    ????????
    </property>
    ????????
    <property?name="password">
    ????????????
    <value></value>
    ????????
    </property>
    ????
    </bean>
    ????????
    ????
    <bean?id="sessoinFactory"?class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    ????????
    <property?name="dataSource">
    ????????????
    <ref?bean="dataSource"?/>
    ????????
    </property>
    ????????
    <property?name="hibernateProperties">
    ????????????
    <props>
    ????????????????
    <prop?key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
    ????????????????
    <prop?key="connection.characterEncoding">utf8</prop>
    ????????????????
    <prop?key="hibernate.show_sql">true</prop>
    ????????????????
    <prop?key="hibernate.hbm2ddl.auto">update</prop>
    ????????????
    </props>
    ????????
    </property>
    ????????
    <property?name="mappingDirectoryLocations">
    ???????????
    <list?>
    ????????????
    <value>src/mapping</value>
    ???????????
    </list>
    ????????
    </property>
    ????
    </bean>
    ????
    ????
    <bean?id="hibernateTemplate"?class="org.springframework.orm.hibernate3.HibernateTemplate">
    ??????
    <property?name="sessionFactory">
    ???????
    <ref?bean="sessoinFactory"/>
    ??????
    </property>
    ??????
    <property?name="allowCreate">
    ????????
    <value>true</value>
    ??????
    </property>
    ????
    </bean>
    ????
    ????
    <bean?id="testDAO"?class="mapping.TestDAO">
    ??????
    <property?name="hibernateTemplate">
    ????????
    <ref?bean="hibernateTemplate"/>
    ??????
    </property>
    ????
    </bean>
    </beans>


    最后的最后,開發一個測試類:

    import?mapping.Test;
    import?mapping.TestDAO;?
    import?org.springframework.context.ApplicationContext;
    import?org.springframework.context.support.FileSystemXmlApplicationContext;

    public?class?Tester?{
    ?
    ????
    public?static?void?main(String?args[])?{
    ????????ApplicationContext?ctx?
    =?new?FileSystemXmlApplicationContext(
    ????????????????
    "src/applicationContext.xml");
    ????????TestDAO?test?
    =?(TestDAO)?ctx.getBean("testDAO");
    ????????
    //test.addTest("dyerac");
    ????????try?{?
    ????????????Test?t?
    =?test.getTest("bsbs");
    ????????????System.err.println(t.getName());
    ????????????
    //t.setName("bsbs");
    ????????????
    //test.updateTest(t);
    ?????????????
    //test.deleteTest(t);
    ????????}
    ?catch?(Exception?e)?{?
    ????????????System.err.println(e);
    ????????}

    ????}

    }

    posted on 2006-08-04 17:42 dyerac in java... 閱讀(6905) 評論(10)  編輯  收藏 所屬分類: spring&hibernate原創文章
    評論:
    • # re: 在myeclipse下整合spring和hibernate  高峰 Posted @ 2006-09-26 16:34
      我用sqlserver連的數據庫 出異常  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  dyerac in java... Posted @ 2006-09-29 01:16
      不會吧,什么問題?  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  冰川 Posted @ 2006-10-04 21:13
      樓主自己測試過了嗎?  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  dyerac in java... Posted @ 2006-10-04 21:48
      @冰川
      在mysql下肯定沒有問題,因為這是我做了后才寫的
      其他數據庫也應該沒有問題  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  fishbaby Posted @ 2006-10-17 16:33
      樓主的樣例不錯,讓我知道了 spring+hibernate是怎么個流程,我試著做了這個樣例,沒有發現問題。謝謝樓主!  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  leifeng Posted @ 2006-12-07 19:49
      ..開發對應的DAO操作pojo..

      是否多余?因為habernate mapping 已經幫你做好了吧  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  dyerac in java... Posted @ 2006-12-08 17:09
      恩,只是為演示而已。  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  loner Posted @ 2006-12-27 16:15
      為什么我的   回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  loner Posted @ 2006-12-27 16:17
      為什么我的 db profile 下是空的,無法選擇呢````這是為什么阿``  回復  更多評論   

    • # re: 在myeclipse下整合spring和hibernate  ,貓貓 Posted @ 2007-03-19 21:48
      List list = this.getHibernateTemplate().findByExample(t);
      老報沒有findByEample()這個方法的錯??  回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
     
    Copyright © dyerac in java... Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 在线观看永久免费视频网站| 亚洲男人都懂得羞羞网站| 国产一级大片免费看| 在线播放亚洲第一字幕| 亚洲成人高清在线观看| 一级做a爱过程免费视| 91成年人免费视频| 精品亚洲视频在线观看| 亚洲人成免费电影| 亚州**色毛片免费观看| 成人免费无码大片a毛片| 亚洲AV无码一区二区三区DV| 色偷偷亚洲男人天堂| 久久免费看黄a级毛片| 亚洲色自偷自拍另类小说| 亚洲中文无码mv| 在线观看永久免费| 亚洲毛片基地日韩毛片基地| 国产亚洲精品免费视频播放| 尤物永久免费AV无码网站| 美女羞羞喷液视频免费| 午夜视频免费观看| 亚洲国产一区在线观看 | 国产拍拍拍无码视频免费| 免费一看一级毛片| 亚洲一卡2卡3卡4卡5卡6卡| 波多野结衣久久高清免费| 亚洲va在线va天堂成人| 又黄又爽一线毛片免费观看| 16女性下面扒开无遮挡免费| 99久久精品国产亚洲| 色偷偷噜噜噜亚洲男人| 免费毛片a在线观看67194| 久久久亚洲裙底偷窥综合| 男人天堂免费视频| 国产精品亚洲二区在线观看| 杨幂最新免费特级毛片| 国产成人免费一区二区三区| 亚洲av无码专区在线电影天堂| 国产精品亚洲mnbav网站 | 亚洲AV无码专区在线电影成人|