前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JDBC连接数据库详细教程指南

JDBC连接数据库详细教程指南

原创
作者头像
久绊A
发布2023-04-10 09:09:02
1.1K0
发布2023-04-10 09:09:02
举报
文章被收录于专栏:IT-Learning-Notes

一、JDBC介绍

JDBC是Java数据库连接的简称。它是Java语言中用于访问关系型数据库的API,提供了一套标准的接口,使得Java应用程序能够与各种关系型数据库进行通信。

二、JDBC环境的搭建

三、JDBC的开发步骤

1、加载JDBC驱动程序

在程序运行之前,需要将JDBC驱动程序加载到内存中。可以使用Class.forName()方法加载驱动程序。例如,如果要使用MySQL数据库,则需要加载com.mysql.jdbc.Driver类。

代码语言:javascript
复制
Class.forName("com.mysql.jdbc.Driver");

2、建立数据库连接

使用DriverManager.getConnection()方法建立与数据库的连接。需要提供数据库的URL、用户名和密码。

代码语言:javascript
复制
String url = "jdbc:mysql://localhost/test";
String user = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, user, password);

3、创建Statement对象

创建一个Statement对象,用于向数据库发送SQL语句。

代码语言:javascript
复制
 Statement stmt = conn.createStatement();

4、执行SQL语句

使用Statement对象的executeQuery()或executeUpdate()方法执行SQL语句。

executeQuery()方法用于执行SELECT语句,返回一个ResultSet对象,而executeUpdate()方法用于执行INSERT、UPDATE和DELETE语句,返回一个整数,表示受影响的行数。

代码语言:javascript
复制
 ResultSet rs = stmt.executeQuery("SELECT * FROM student");

5、处理结果集

如果执行的是SELECT语句,那么需要处理返回的结果集。可以使用ResultSet对象的next()方法遍历结果集,并使用getXXX()方法获取每个字段的值。

代码语言:javascript
复制
 while (rs.next()) {
         int id = rs.getInt("id");
         String name = rs.getString("name");
         int age = rs.getInt("age");
         System.out.println("id: " + id + ", name: " + name + ", age: " + age);
      }

6、关闭连接

使用Connection、Statement和ResultSet对象的close()方法关闭连接。

代码语言:javascript
复制
rs.close();
stmt.close();
conn.close();

7、示例程序

代码语言:javascript
复制
import java.sql.*;

public class JdbcDemo {
   public static void main(String[] args) throws Exception {
      // 加载JDBC驱动程序
      Class.forName("com.mysql.jdbc.Driver");

      // 建立数据库连接
      String url = "jdbc:mysql://localhost/test";
      String user = "root";
      String password = "123456";
      Connection conn = DriverManager.getConnection(url, user, password);

      // 创建Statement对象
      Statement stmt = conn.createStatement();

      // 执行SQL语句
      ResultSet rs = stmt.executeQuery("SELECT * FROM student");

      // 处理结果集
      while (rs.next()) {
         int id = rs.getInt("id");
         String name = rs.getString("name");
         int age = rs.getInt("age");
         System.out.println("id: " + id + ", name: " + name + ", age: " + age);
      }

      // 关闭连接
      rs.close();
      stmt.close();
      conn.close();
   }
}

8、注意

在实际开发中,建议使用PreparedStatement对象代替Statement对象,以防止SQL注入攻击。PreparedStatement对象可以使用Connection.prepareStatement()方法创建。

代码语言:javascript
复制
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM student WHERE name = ?");
pstmt.setString(1, "张三");
ResultSet rs = pstmt.executeQuery();

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 二、JDBC环境的搭建
  • 三、JDBC的开发步骤
    • 1、加载JDBC驱动程序
      • 2、建立数据库连接
        • 3、创建Statement对象
          • 4、执行SQL语句
            • 5、处理结果集
              • 6、关闭连接
                • 7、示例程序
                  • 8、注意
                  相关产品与服务
                  TDSQL MySQL 版
                  TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档