<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%><%-- 此代码主要进行查询操作--%><%! // 定义数据库驱动程序 String DBDRIVER = "sun.jdbc.odbc.JdbcOdbcDriver" ; // 定义数据库连接地址 String DBURL = "jdbc:odbc:sky" ; // 定义数据库连接对象,属于java.sql包中的接口 Connection conn = null ; // 定义Statement对象,用于操作数据库 Statement stmt = null ; // 定义一字符串变量,用于保存SQL语句 String sql = null ; // 查询返回的结果集对象 ResultSet rs = null ;%><% // 1、加载驱动程序 try { Class.forName(DBDRIVER) ; } catch(Exception e) { // 此处使用out.print是处于演示目的,在实际开发中所有的错误消息,绝对不能够通过out.print打印,否则会存在安全问题 out.println("数据库驱动程序加载失败!!!") ; } // 2、连接数据库 try { conn = DriverManager.getConnection(DBURL) ; } catch(Exception e) { out.println("数据库连接失败!!!") ; } // 3、操作数据库 // 通过Connection对象实例化Statement对象 try { // 声明结果集可上下移动 stmt = conn.createStatement() ; // 取消自动提交 conn.setAutoCommit(false) ; // 编写查询的SQL语句 // sql = "SELECT id,name,password,age FROM person" ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _A','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _B','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _C','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _D','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _E','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _F','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES (' DARKNESS _G','zzzzzz',28)") ; stmt.addBatch("INSERT INTO person (name,password,age) VALUES ('DARKNESS_H','zzzzzz',28)") ; // 执行批处理语句 stmt.executeBatch() ; // 如果没有异常,则执行此段代码 // 提交事务,真正向数据库中插入数据 conn.commit() ; } catch(Exception e) { // 将数据库回滚 try { conn.rollback() ; } catch(Exception e1) {} out.println("操作数据库失败!!!") ; } // 4、关闭数据库 try { // 关闭结果集 // rs.close() ; // 关闭操作 stmt.close() ; // 关闭连接 conn.close() ; } catch(Exception e) { out.println("数据库关闭失败!!!") ; }%>