Oracle的JDBC
程序员文章站
2024-03-16 20:41:46
...
package com.stx.exercise.jdbcdemo;
import java.sql.*;
public class JDBCUtil {
public static Connection getConnection() {
Connection conn = null;
try {
//1、注册驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//2、获取连接
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:mldn", "scott", "tiger");
//3、创建SQl对象
} catch (Exception ex) {
//捕获异常
ex.printStackTrace();
}
//这是一个有返回值的构造方法,返回conn给调用它的方法。
return conn;
}
/*这是一个执行executeUpdate方法的方法抽取。
*原因:数据库有二个类型。
* 数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。
* 一个是executeUpdate:(DML,DDL)
* 一个是executeQuery:(DQL)
*DML:数据,插,删,改。
* DDL:表操作。
* DQL:查询。
* */
public static int update(String sql) {
Connection conn = null;
Statement stmt = null;
int num = 0;
try {
//1、先获取连接
conn = getConnection();
//2、使用连接,创建一个发送SQL语句对象方法。
stmt = conn.createStatement();
//3、调用executeUpdate方法执行SQL语句。
num = stmt.executeUpdate(sql);
} catch (SQLException e) {
e.printStackTrace();
} finally {
closeConnection(null, conn, stmt);
}
return num;
}
/*这是一个执行executeQuery方法的抽取
*功能负责查询,返回一个结果集。
* */
public static void show(String sql) {
Connection conn = null;
Statement stmt = null;
ResultSet resultSet = null;
try {
//1、先获取连接
conn = getConnection();
//2、使用连接,创建一个发送SQL语句对象方法。
stmt = conn.createStatement();
//3、调用executeQuery方法执行SQL语句进行查询。
resultSet = stmt.executeQuery(sql);
//4、通过循环查询表中的数据。
while (resultSet.next()) {
System.out.println(resultSet.getString("student_name") + "\t" +
resultSet.getString("student_id") + "\t" +
resultSet.getString("student_age"));
}
} catch (SQLException e) {
//5、捕获异常
e.printStackTrace();
} finally {
//6、关闭数据库资源
closeConnection(resultSet, conn, stmt);
}
}
/*关闭资源的构造方法,断开连接。防止资源浪费。
*
* */
public static void closeConnection(ResultSet resultSet, Connection conn, Statement stmt) {
try {
if (resultSet != null) {
resultSet.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
上一篇: 对称加密和非对称加密
下一篇: CSS3~~2D转换效果