欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

简单说下JDBC的批处理 博客分类: jdbc jdbc 

程序员文章站 2024-03-22 10:07:16
...
public final static Connection getConnection(){
    Connection connection=null;
    try {
         Class.forName("oracle.jdbc.driver.OracleDriver");
connection=DriverManager.getConnection("jdbc:oracle:thin:@192.168.5.26:1521:root","house","1");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
     return connection;
}


public static void closeAll(ResultSet rs,PreparedStatement ps,CallableStatement cst,Statement st,Connection connection){
try {
     if (rs!=null) {
          rs.close();
     }
     if (ps!=null) {
ps.close();
     }
     if (cst!=null) {
cst.close();
     }
     if (st!=null) {
st.close();
     }
     if (connection!=null) {
connection.setAutoCommit(true);
connection.close();
     }
} catch (SQLException e) {
e.printStackTrace();
}
}


Connection connection = null;
PreparedStatement ps = null;
try{
connection = getConnection();
ps = connection.prepareStatement(sql);
for (int i = 0; i < checks.length; i++) {
     long resourceChannelLinkId = UUIDLongGenerator.generateId();
ps.setString(index, value);
ps.addBatch();

int[] lines = ps.executeBatch()
if(checks.length != lines.length){
     connection.rollback();
} else {
     closeAll(null,ps,null,null,null,connection);
}
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}finally{
         closeAll(null,ps,null,null,null,connection);
}


相关标签: jdbc