JDBC(Java Database Connectivity)는 Java 프로그램이 데이터베이스와 상호 작용하는 데 사용되는 API입니다. JDBC 연결을 설정하려면 다음을 수행해야 합니다. 1. JDBC 드라이버 JAR 파일을 가져옵니다. 2. 드라이버를 로드하고 등록합니다. 3. 연결 개체를 생성합니다. JDBC는 SQL 쿼리 및 업데이트 작업을 허용하고 업데이트 수행을 위한 ReadyStatement를 제공합니다. 모든 작업이 완료된 후 JDBC 연결을 닫아 리소스를 해제해야 합니다. JDBC를 사용하면 레코드 삽입, 쿼리, 업데이트 등 데이터베이스와 쉽게 상호 작용할 수 있습니다.
Java 데이터베이스 연결: JDBC API 실용 가이드
JDBC(Java Database Connectivity)는 Java 프로그램이 데이터베이스와 상호 작용하기 위한 API입니다. MySQL, Oracle, PostgreSQL 등을 포함한 다양한 데이터베이스에 액세스하는 표준 방법을 제공합니다.
JDBC 연결 설정
데이터베이스에 대한 JDBC 연결을 설정하려면 다음을 수행해야 합니다.
- JDBC 드라이버 JAR 파일을 가져옵니다.
- 드라이버를 로드하고 등록하세요.
-
연결
개체를 생성합니다.Connection
对象。
import java.sql.*; public class JdbcExample { public static void main(String[] args) { // 数据库凭据 String url = "jdbc:mysql://localhost:3306/database_name"; String username = "root"; String password = "password"; // 加载和注册驱动程序 try { Class.forName("com.mysql.cj.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); return; } // 创建连接 Connection connection = null; try { connection = DriverManager.getConnection(url, username, password); } catch (SQLException e) { e.printStackTrace(); return; } // 使用连接执行 SQL 查询或更新操作 // ... } }
执行 SQL 查询
一旦连接建立,就可以执行 SQL 查询。
// 创建一个 Statement 对象 Statement statement = connection.createStatement(); // 执行查询并获取结果集 ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name"); // 遍历结果集 while (resultSet.next()) { // 获取列值 int id = resultSet.getInt("id"); String name = resultSet.getString("name"); // 打印结果 System.out.println("Id: " + id + ", Name: " + name); }
执行 SQL 更新
要执行 SQL 更新操作(例如插入、更新或删除记录),可以使用 PreparedStatement
。
// 创建一个 PreparedStatement String sql = "INSERT INTO table_name (name, age) VALUES (?, ?)"; PreparedStatement statement = connection.prepareStatement(sql); // 设置参数 statement.setString(1, "John Doe"); statement.setInt(2, 30); // 执行更新 int rowCount = statement.executeUpdate();
关闭 JDBC 连接
在完成所有操作后,请务必关闭 JDBC 连接以释放资源。
try { connection.close(); } catch (SQLException e) { e.printStackTrace(); }
实战案例
假设你有一个 customers
表,包含以下列:
- id(ID)
- name(姓名)
- age(年龄)
使用 JDBC,你可以创建一个 Java 程序来插入一个新客户:
// 添加新客户 String sql = "INSERT INTO customers (name, age) VALUES (?, ?)"; PreparedStatement statement = connection.prepareStatement(sql); statement.setString(1, "Jane Doe"); statement.setInt(2, 25); int rowCount = statement.executeUpdate(); // 验证是否成功 if (rowCount > 0) { System.out.println("新客户已添加。"); }
然后,你可以通过输出 customers
// 输出客户 ResultSet resultSet = statement.executeQuery("SELECT * FROM customers"); while (resultSet.next()) { int id = resultSet.getInt("id"); String name = resultSet.getString("name"); int age = resultSet.getInt("age"); System.out.println("Id: " + id + ", Name: " + name + ", Age: " + age); }SQL 쿼리 실행🎜🎜연결이 설정되면 SQL 쿼리를 실행할 수 있습니다. 🎜rrreee🎜SQL 업데이트 수행🎜🎜SQL 업데이트 작업(예: 레코드 삽입, 업데이트 또는 삭제)을 수행하려면
PreparedStatement
를 사용할 수 있습니다. 🎜rrreee🎜JDBC 연결 종료🎜🎜모든 작업이 완료된 후에는 반드시 JDBC 연결을 종료하여 리소스를 해제해야 합니다. 🎜rrreee🎜실용 사례🎜🎜다음 열이 있는 customers
테이블이 있다고 가정해 보겠습니다. 🎜- 🎜id (ID) 🎜🎜name (이름) 🎜🎜age (나이) 🎜
customers
테이블의 레코드를 출력하여 삽입이 성공했는지 확인할 수 있습니다. 🎜rrreee위 내용은 Java 데이터베이스 연결은 JDBC API를 어떻게 사용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于PriorityQueue优先级队列的相关知识,Java集合框架中提供了PriorityQueue和PriorityBlockingQueue两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于java锁的相关问题,包括了独占锁、悲观锁、乐观锁、共享锁等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于多线程的相关问题,包括了线程安装、线程加锁与线程不安全的原因、线程安全的标准类等等内容,希望对大家有帮助。

本篇文章给大家带来了关于Java的相关知识,其中主要介绍了关于关键字中this和super的相关问题,以及他们的一些区别,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于枚举的相关问题,包括了枚举的基本操作、集合类对枚举的支持等等内容,下面一起来看一下,希望对大家有帮助。

封装是一种信息隐藏技术,是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法;封装可以被认为是一个保护屏障,防止指定类的代码和数据被外部类定义的代码随机访问。封装可以通过关键字private,protected和public实现。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于设计模式的相关问题,主要将装饰器模式的相关内容,指在不改变现有对象结构的情况下,动态地给该对象增加一些职责的模式,希望对大家有帮助。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

Dreamweaver Mac版
시각적 웹 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.
