1 5 6 package org.javabb.migration.phpbb; 7 import java.sql.Connection ; 8 import java.sql.PreparedStatement ; 9 import java.sql.ResultSet ; 10 import java.sql.SQLException ; 11 import java.sql.Statement ; 12 import java.sql.Timestamp ; 13 14 public class Jbb_posts extends Jbb_Convert { 15 16 public void convert() throws ClassNotFoundException , SQLException { 17 sql = "select p.post_id, p.topic_id, p.poster_id, p.post_time, p.poster_ip, p.enable_sig, pt.post_subject, " + 18 "pt.post_text from "+phpbb_prefix+"posts as p, "+phpbb_prefix+"posts_text as pt where p.post_id = " + 19 "pt.post_id;"; 20 System.out.println("TABLE JBB_POSTS."); 21 Connection phpConn = this.getPhpBBConnection(); 22 Statement stm = phpConn.createStatement(); 23 System.out.println("\tReading data"); 24 ResultSet rs = stm.executeQuery(sql); 25 long i = 0; 26 27 Connection javaConn = this.getJavaBBConnection(); 28 29 javaConn.createStatement().executeUpdate("delete from jbb_posts"); 30 System.out.println("delete from jbb_posts is OK!"); 31 32 PreparedStatement ps = javaConn.prepareStatement("insert into jbb_posts (id_post, id_user, id_topic, " + 33 "data_post, assunto, post_body, sig, ip, post_state) values (?,?,?,?,?,?,?,?,?)"); 34 35 System.out.println("\tInserting data "); 36 while (rs.next()) { 37 ps.setInt (1, rs.getInt("post_id")); 38 ps.setInt (2, rs.getInt("poster_id") == -1 ? 0 : rs.getInt("poster_id")); 39 ps.setInt (3, rs.getInt("topic_id")); 40 ps.setTimestamp (4, new Timestamp (rs.getLong("post_time")*1000)); 41 ps.setString (5, toJbbCode(rs.getString("post_subject"))); 42 ps.setString (6, toJbbCode(rs.getString("post_text"))); 43 ps.setInt (7, rs.getInt("enable_sig")); 44 ps.setString (8, convertIP(rs.getString("poster_ip"))); 45 ps.setInt (9, 0); 47 ps.addBatch(); 48 49 if (i%10000 == 0){ 50 try { 51 ps.executeBatch(); 52 } catch (SQLException e) { 53 System.out.println("\n\n" + e.getNextException().getMessage()); 54 }; 55 } 56 57 System.out.print("."); 58 } 59 System.out.println("\n"); 60 61 try { 62 ps.executeBatch(); 63 } catch (SQLException e) { 64 System.out.println("\n\n" + e.getNextException().getMessage()); 65 } 66 67 ps.close(); 68 stm.close(); 69 rs.close(); 70 phpConn.close(); 71 javaConn.close(); 72 System.out.print("Done!\n\n"); 73 } 74 } | Popular Tags |