Rory's Blog
          Happy study,Happy work,Happy life
          posts - 22,  comments - 46,  trackbacks - 0
          以前一直都沒有試過,前幾天打算把wordpress換成自己寫的程序,就想到了數據的導入和導出,首先想到的是用數據庫工具來導??墒怯X得有些麻煩,我自己的程序是用spring+hibernate的。后來我就試了一下spring的JdbcTemplate,就和HibernateTemplate一樣的好用。首先增加一個連接到wp數據庫的dataSource
          ????<bean?id="dataSource2"?class="org.springframework.jdbc.datasource.DriverManagerDataSource"?destroy-method="close">
          ????????
          <property?name="driverClassName"><value>org.hibernate.dialect.MySQLDialect</value></property>
          ????????
          <property?name="url">
          ????????????
          <value>jdbc:mysql://192.168.0.240:3306/wordpressωuseUnicode=true&amp;characterEncoding=utf8</value>
          ????????????
          </property>
          ????????
          <property?name="username"><value>root</value></property>
          ????????
          <property?name="password"><value></value></property>
          ????
          </bean>

          ??? 然后在轉換程序里面get這個dataSource,new 一個JdbcTemplate(dataSource2),這樣就ok了。很簡單吧。

          ????public?void?testCopyData()?throws?Exception{
          ????????DataSource?ds?
          =?(DataSource)applicationContext.getBean("dataSource2");
          ????????
          ????????CategoryManager?cateManager?
          =?(CategoryManager)?applicationContext.getBean("categoryManager");
          ????????
          ????????JdbcTemplate?jt?
          =?new?JdbcTemplate(ds);
          ????????System.out.println(
          "Total?posts:"+jt.queryForInt("select?count(*)?from?wp_posts"));
          ????????assertNotNull(ds);
          ????????
          ????????List?cates?
          =?jt.queryForList("select?*?from?wp_categories");
          ????????
          int?i=?0;
          ????????
          for(Iterator?ite?=?cates.iterator();?ite.hasNext();){
          ????????????i
          ++;
          ????????????Map?result?
          =?(Map)?ite.next();
          ????????????Category?cate?
          =?new?Category();
          ????????????cate.setName((String)result.get(
          "cat_name"));
          ????????????cate.setOrder(i);
          ????????????
          if(i==1)
          ????????????????cate.setDefaultCategory(
          true);
          ????????????cateManager.saveCategory(cate);
          ????????????System.out.println(
          "cat_name:"+result.get("cat_name")+"\n");
          ????????}
          ????}
          posted on 2006-04-07 00:03 莫多 閱讀(3589) 評論(7)  編輯  收藏 所屬分類: Spring

          FeedBack:
          # re: spring操作數據庫如此簡單
          2006-04-07 07:08 | 劍事
          Category可以不要了  回復  更多評論
            
          # re: spring操作數據庫如此簡單
          2006-04-07 09:13 | 莫多
          為什么不要了? 不明白  回復  更多評論
            
          # re: spring操作數據庫如此簡單
          2006-04-07 09:24 | yerba
          CategoryManager cateManager = (CategoryManager) applicationContext.getBean("categoryManager");
          這個沒有作用的嘛  回復  更多評論
            
          # re: spring操作數據庫如此簡單
          2006-04-07 09:33 | 劍事
          已經封裝到MAP里了 直接用就可以了

          ResultSet-->Map-->Category 經手過多  回復  更多評論
            
          # re: spring操作數據庫如此簡單
          2006-04-07 10:55 | 莫多
          To:yerba
          怎么沒有作用?
          cateManager.saveCategory(cate);
          用這個保存到我的新數據庫中的啊。  回復  更多評論
            
          # re: spring操作數據庫如此簡單
          2006-04-07 10:56 | 莫多
          to:劍事
          我是為了用hibernate才這樣做的啊,這樣我就不用再寫insert了啊。呵呵。
            回復  更多評論
            
          # re: spring操作數據庫如此簡單
          2006-06-21 13:41 | xmlspy@tom.com
          如果是大批量的update或者insert,建議用
          JdbcTemplate().batchUpdate(sql,BatchPreparedStatementSetter )

          性能有質的提高  回復  更多評論
            

          <2006年4月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          常用鏈接

          留言簿(1)

          隨筆分類(27)

          隨筆檔案(22)

          Friends

          搜索

          •  

          積分與排名

          • 積分 - 62241
          • 排名 - 845

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 方正县| 泌阳县| 伊吾县| 九龙城区| 肥西县| 农安县| 隆昌县| 高阳县| 凤山市| 新民市| 自治县| 年辖:市辖区| 牙克石市| 上高县| 观塘区| 汤阴县| 四子王旗| 伊春市| 南皮县| 荥经县| 盐城市| 雷山县| 崇明县| 梅州市| 通渭县| 宁阳县| 沐川县| 晋城| 章丘市| 武夷山市| 金乡县| 徐水县| 陈巴尔虎旗| 吴忠市| 婺源县| 巢湖市| 蕲春县| 尉氏县| 盐城市| 卢龙县| 镇原县|