JDBC를 사용하여 MySQL 데이터베이스에 연결

Migel Hewage Nimesha 2023년10월12일
  1. JDBC를 사용하여 데이터베이스를 연결하기 위한 기본 요구 사항
  2. JDBC를 사용하여 MySQL 데이터베이스에 연결
  3. 결론
JDBC를 사용하여 MySQL 데이터베이스에 연결

JDBC는 Java Database Connectivity의 약자입니다. 이 Java API는 데이터베이스와 쿼리를 연결하고 실행합니다.

API는 JDBC 드라이버를 사용하여 데이터베이스와 연결합니다. 드라이버는 JDBC-ODBC 브리지 드라이버, 네이티브 드라이버, 네트워크 프로토콜 드라이버 및 씬 드라이버의 네 가지 유형으로 구성됩니다.

JDBC를 사용하여 데이터베이스를 연결하기 위한 기본 요구 사항

MySQL은 MySQL Connector/J와 함께 Java 프로그래밍 언어를 사용하여 개발된 애플리케이션에 대한 연결을 제공합니다. Connector/J는 JDBC API와 여러 부가 가치 확장을 구현합니다.

MySQL 데이터베이스를 Java와 연결하려면 시스템에 두 가지 주요 구성 요소가 설치되어 있어야 합니다.

  • 자바 개발 키트(JDK)
  • MySQL JDBC 드라이버

위의 요구 사항 외에도 Java 코드를 구현하려면 IDE가 필요합니다.

JDBC 드라이버가 없는 경우 인터넷에서 해당 드라이버를 검색하여 시스템에 다운로드합니다. 또한 아래 링크를 통해 MySQL Installer를 다운로드할 수 있으며, 이를 통해 Connector/J 커넥터를 설치할 수 있습니다.

https://dev.mysql.com/downloads/windows/installer/8.0.html

또는 시스템에 MySQL을 설치할 때 커넥터를 설치할 수 있습니다. 그런 다음 mysqlconnector.jar 파일을 로드해야 합니다.

jar 파일을 복사하여 JRE/lib/ext 폴더에 붙여 넣으면 됩니다. 두 가지 요구 사항을 모두 준비한 후 Java 코드를 구현하여 MySQL 데이터베이스에 연결할 수 있습니다.

JDBC를 사용하여 MySQL 데이터베이스에 연결

연결을 설정하기 전에 아래와 같이 Java 코드에 대한 SQL 라이브러리를 가져와야 합니다.

import java.sql.Connection; // To create a connection
import java.sql.DriverManager; // To access the JDBC ddriver
import java.sql.SQLException; // provides info on database access errors or other errors

그런 다음 아래와 같이 드라이버 클래스를 정의할 수 있습니다.

Class.forName("com.mysql.cj.jdbc.Driver");

드라이버 클래스 com.mysql.jdbc.Driver는 MySQL 데이터베이스용 드라이버 클래스였지만 지금은 더 이상 사용되지 않습니다. 새 드라이버 클래스는 위에 표시된 대로 com.mysql.cj.jdbc.Driver입니다.

이제 MySQL 데이터베이스에 대한 연결을 만들 수 있습니다. 연결을 만드는 구문은 다음과 같습니다.

Connection con = DriverManager.getConnection(ConnectionString);

여기서 ConnectionString은 중요한 단계이며 ConnectionString을 작성하는 구문은 다음과 같습니다.

"jdbc:mysql://host:port/database","username","password"

위의 연결 문자열을 설명하면 jdbc는 API이고 mysql은 데이터베이스입니다. 호스트는 MySQL이 실행 중인 서버 이름입니다.

port는 데이터베이스가 사용하는 포트 번호이고 database는 연결할 데이터베이스 이름입니다. username은 데이터베이스 사용자의 사용자 이름이고 password는 데이터베이스에 대한 사용자의 비밀번호입니다.

아래와 같이 문자열과의 연결을 생성하는 데 사용되는 구문을 수정할 수 있습니다.

Connection con =
    DriverManager.getConnection("jdbc:mysql://host:port/database", "username", "password");

전체 코드:

package mysqldemos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQLJDBC {
  public static void main(String[] args) throws SQLException, ClassNotFoundException {
    Class.forName("com.mysql.cj.jdbc.Driver");
    Connection con =
        DriverManager.getConnection("jdbc:mysql://host:port/database", "username", "password");
  }
}

위의 코드를 사용하여 MySQL 데이터베이스에 연결하는 방법을 살펴보겠습니다. 데이터베이스 정보에 따라 연결 문자열의 구성 요소를 변경해야 합니다.

package mysqldemos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class MySQLJDBC {
  public static void main(String[] args) throws SQLException, ClassNotFoundException {
    Class.forName("com.mysql.cj.jdbc.Driver");
    Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/new", "root", "root");
  }
}

코드를 실행해도 MySQL 데이터베이스에 연결되어 있으므로 출력이 제공되지 않습니다. JDBC MySQL 연결 문자열과 관련 리소스를 사용하여 MySQL 데이터베이스를 연결하는 방법입니다.

결론

이 글은 연결 문자열과 관련된 몇 가지 필수 구성 요소 및 소개와 함께 JDBC MySQL 연결 문자열에 대해 설명합니다. MySQL 데이터베이스에 대한 연결을 설정하기 위한 요구 사항과 이러한 기능을 수행하여 Java 코드를 통해 연결을 설정하는 방법을 살펴보았습니다.

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.