1. import java.sql.Connection; 
  2. import java.sql.DriverManager; 
  3. import java.sql.SQLException; 
  4.  
  5. public class JDBCSessionFactory { 
  6.     Connection conn = null
  7.  
  8.     public Connection getConnection() { 
  9.         try { 
  10.             // step1:注册驱动; 
  11.             Class.forName("oracle.jdbc.driver.OracleDriver"); 
  12.             // step 2:获取数据库连接; 
  13.             DriverManager.getConnection( 
  14.                     "jdbc:oracle:thin:@192.168.0.58:1521:nxdb""db_zgxt"
  15.                     "css"); 
  16.         } catch (ClassNotFoundException e) { 
  17.             e.printStackTrace(); 
  18.         } catch (SQLException e) { 
  19.             e.printStackTrace(); 
  20.         } finally { 
  21.             return conn; 
  22.         } 
  23.     } 

 


 

  1. import java.sql.PreparedStatement; 
  2. import java.sql.ResultSet; 
  3. import java.sql.SQLException; 
  4.  
  5. public class JDBCTest { 
  6.     public void testJDBC() { 
  7.         PreparedStatement ps = null
  8.         ResultSet rs = null
  9.         try { 
  10.          /************************ 查 询 ************************/ 
  11.             ps = new JDBCSessionFactory().getConnection().prepareStatement( 
  12.                     "SELECT id, fname, lname, age, FROM Person_Tbl"); 
  13.             // step 3 :执行查询语句,获取结果集; 
  14.             rs = ps.executeQuery(); 
  15.             // step 4:处理结果集—输出结果集中保存的查询结果; 
  16.             while (rs.next()) { 
  17.                 System.out.print("id = " + rs.getLong("id")); 
  18.                 System.out.print(" , fname = " + rs.getString("fname")); 
  19.                 System.out.print(" , lname = " + rs.getString("lname")); 
  20.                 System.out.print(" , age = " + rs.getInt("age")); 
  21.             } 
  22.             /************************ 修 改 *********************/ 
  23.             ps = new JDBCSessionFactory().getConnection().prepareStatement( 
  24.                     "UPDATE Person_Tbl SET age=23 WHERE id = ?"); 
  25.             ps.setLong(188); 
  26.             int rows = ps.executeUpdate(); 
  27.             System.out.println(rows + " rows affected."); 
  28.         } catch (SQLException e) { 
  29.             e.printStackTrace(); 
  30.         } 
  31.     } 

 


 

  1. /** 
  2.  *从数据库中取出100,000条数据,每次插入数据库1000条, 
  3.  *请写出 java相关处理程序,其中insertAll(ArrayList或Vector)为公共方法, 
  4.  *已封装好从数据库取出的100,000条数据。 
  5.  *要求实现功能:批量插入数据  
  6.  */ 
  7.  
  8. import java.sql.PreparedStatement; 
  9. import java.sql.SQLException; 
  10. import java.util.Iterator; 
  11. import java.util.List; 
  12.  
  13. public class InsertBatch { 
  14.  
  15.     public static boolean insertAll(List<?> result) { 
  16.         Iterator<?> it = result.iterator(); 
  17.         int i = 0
  18.         try { 
  19.             PreparedStatement ps = new JDBCSessionFactory().getConnection() 
  20.                     .prepareStatement("insert into table values(?)"); 
  21.  
  22.             while (it.hasNext()) { 
  23.                 ++i; 
  24.                 ps.setString(0, it.next() + ""); 
  25.                 if (i % 1000 == 0) { 
  26.                     ps.execute(); 
  27.                     ps.clearBatch(); 
  28.                 } 
  29.                 ps.addBatch(); 
  30.             } 
  31.             return true
  32.         } catch (SQLException e) { 
  33.             e.printStackTrace(); 
  34.         } 
  35.         return false
  36.     }