JAVA高级编程之JDBC

JDBC(Java Data Base Connectivity ,Java数据库连接技术)是一种用于执行SQL语句的java API,可以为多种关系数据库提供一访问,它是由java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建高级的工具和接口,使数据库开发人员能够编写数据库应用程序。

JDBC连接步骤:

1.注册驱动

Class.forName(driver);

  • mysql驱动:driver=com.mysql.jdbc.Driver

  • oracle驱动:driver=oracle.jdbc.driver.OracleDriver

2.获取连接

DriverManager.getConnection(url, user, password)

  • mysql的url:jdbc:mysql://127.0.0.1:3306/zmysql

zmysql为自己创建的一个数据库,3306为MySQL的端口号

  • oracle的url:jdbc:oracle:thin:@localhost:1521:XE

oracle的url格式固定

  • user:自己创建mysql的用户名

  • passwo:创建mysql的密码

3 创建PreparedStatement对象

pstmt = conn.prepareStatement(sql);

  • 如果有占位符替换占位符

4 执行SQL

增删改: executeUpdate()

查 :executeQuery()

5 如果有结果集,处理结果集

6 释放资源

Connection.close()

PreparedStatement.close()

ResultSet.close()

  • 后创建的先释放

实例代码:以学生表student(id,name,age)为例

try catch语句省略

class basic

{

Connection conn = null;

PreparedStatement pstmt = null;

ResultSet result = null;

driver = "com.mysql.jdbc.Driver";

url = "jdbc:mysql://127.0.0.1:3306/zmysql";

user = "root";

password = "root";

// 注册驱动

Class.forName(driver);

//获取连接

conn = DriverManager.getConnection(url, user, password);

// 创建pstmt

String sql = "select *from tbl_student";

pstmt = conn.prepareStatement(sql);

// 执行查询

result = pstmt.executeQuery();

System.out.println(result+"==");

// 处理结果集

while (result.next()) {

Long id = result.getLong("id");

String name = result.getString("name");

int age = result.getInt("age");

System.out.println("id=" + id + "name=" + name + "age=" +age);

}

//释放资源

if (rs != null) {

rs.close();

}

if (conn != null) {

conn.close();

}

if (pstmt != null) {

pstmt.close();

}

}

知识拓展:

怎样在JDBC技术中体现封装思想?

  • 把相同的部分封装在基础类中

public class ConnectionFactory {

static String driver;

static String url;

static String user;

static String password;

static {

driver = "com.mysql.jdbc.Driver";

url = "jdbc:mysql://127.0.0.1:3306/ssh";

user = "root";

password = "980687451";

}

/**

  • 获取连接

*/

public static Connection getConnection() throws Exception {

Class.forName(driver);

return DriverManager.getConnection(url, user, password);

}

/**

  • 释放资源

*/

public static void close(ResultSet rs, Connection conn, PreparedStatement pstmt) throws Exception {

if (rs != null) {

rs.close();

}

if (conn != null) {

conn.close();

}

if (pstmt != null) {

pstmt.close();

}

}

}

你可能感兴趣的:(JAVA高级编程之JDBC)