package com.neusoft.utils; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JdbcOracleTest { /** * @param args */ public static void main(String[] args) { // 2.建立同数据库的连接 // url:统一资源定位符 String url = "jdbc:oracle:thin:@10.25.85.247:1521:orcl"; String user = "scott"; String password = "tiger"; Connection con = null; Statement st = null; String sql = "select * from DEPT"; String sql1 = "delete from USERTEST"; ResultSet rs = null; PreparedStatement pst = null; // 1.加载驱动 try { Class.forName("oracle.jdbc.driver.OracleDriver"); con = DriverManager.getConnection(url, user, password); System.out.println("数据库连接成功!"); // 取消自动提交事务 con.setAutoCommit(false); // 3.取得statement对象 st = con.createStatement(); // 4.发送statement到oracle中,并且查询表 rs = st.executeQuery(sql); // 5.取出结果集中的数据 while (rs.next()) { System.out.println("*************************"); String deptno = rs.getString(1); System.out.println(deptno); String dname = rs.getString(2); System.out.println(dname); String loc = rs.getString(3); System.out.println(loc); System.out.println("*************************"); } // 6.删除数据 // int i = st.executeUpdate(sql1); // System.out.println("删除的记录的条数:"+i); // 7.高级-->?占位符 pst = con.prepareStatement("insert into USERTEST values(?,?,?)"); // 给占位符赋值-->通过serXxx()方法 pst.setString(1, "5"); pst.setString(2, "u5"); pst.setString(3, "p5"); int i = pst.executeUpdate(); System.out.println("插入的记录的条数:" + i); //事务处理-->提交 con.commit(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); try { //事务处理-->回滚 con.rollback(); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } // 6.关闭资源 try { if (rs != null) { rs.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (st != null) { st.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (pst != null) { pst.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { if (con != null) { con.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }