Java 프로그램에서 MySQL 저장 프로시저를 호출하는 방법

PHPz
풀어 주다: 2023-04-19 15:12:55
원래의
845명이 탐색했습니다.

Java는 널리 사용되는 프로그래밍 언어입니다. 웹 애플리케이션을 개발할 때 데이터를 처리하기 위해 MySQL 저장 프로시저를 호출해야 하는 경우가 많습니다. 이 기사에서는 Java 프로그램에서 MySQL 저장 프로시저를 호출하는 방법을 자세히 소개합니다.

1. MySQL 저장 프로시저

MySQL 저장 프로시저는 복잡한 SQL 쿼리와 데이터 작업을 캡슐화하고 필요할 때 호출할 수 있는 SQL 코드 모음입니다. 저장 프로시저는 일반적으로 일반 SQL 문보다 빠르게 실행됩니다.

MySQL 저장 프로시저는 MySQL 클라이언트 또는 MySQL Workbench와 같은 관리 도구를 통해 생성할 수 있습니다. 저장 프로시저를 생성하는 방법은 SQL 문을 작성하는 것과 유사하지만 DELIMITER 명령을 사용하여 종결자를 지정해야 합니다. 예를 들어 다음 코드는 간단한 저장 프로시저를 만듭니다.

DELIMITER // CREATE PROCEDURE GetProductList() BEGIN SELECT * FROM products; END // DELIMITER ;
로그인 후 복사

위 코드에서 DELIMITER는 끝 문자를 "//"로 지정하고 저장 프로시저 이름은 GetProductList이며 SELECT 문은 "products" 테이블에서 모든 데이터를 가져옵니다. ".

2. Java에서 MySQL 저장 프로시저 호출

MySQL 저장 프로시저 호출은 일반 SQL 문 호출과 유사하며 Java JDBC API를 사용해야 합니다. 다음은 JDBC API를 사용하여 MySQL 저장 프로시저를 호출하는 몇 가지 기본 단계입니다.

  1. JDBC 드라이버 로드

Java 프로그램에서 JDBC API를 사용하는 경우 MySQL JDBC 드라이버를 먼저 로드해야 합니다. Class.forName() 메서드를 사용하여 드라이버를 로드하거나 JDBC 드라이버 jar 패키지를 통해 드라이버를 등록할 수 있습니다. 예:

Class.forName("com.mysql.cj.jdbc.Driver");
로그인 후 복사
  1. 데이터베이스 연결 설정

데이터베이스 연결을 설정하려면 서버 주소, 데이터베이스 이름, 사용자 이름 및 비밀번호와 같은 정보를 지정해야 합니다. DriverManager 클래스의 getConnection() 메소드를 통해 데이터베이스 연결을 설정할 수 있습니다. 예:

String url = "jdbc:mysql://localhost:3306/mydb"; String user = "myuser"; String password = "mypassword"; Connection conn = DriverManager.getConnection(url, user, password);
로그인 후 복사
  1. CallableStatement 객체 생성

MySQL 저장 프로시저를 호출하려면 CallableStatement 객체를 사용해야 하며, 이 객체는 다음을 통해 생성될 수 있습니다. Connection.prepareCall() 메서드. 예:

String call = "{call GetProductList()}"; CallableStatement stmt = conn.prepareCall(call);
로그인 후 복사

저장 프로시저 이름은 중괄호 "{}"로 묶고 "{call}" 접두사를 붙여야 합니다.

  1. 매개변수 설정 및 저장 프로시저 실행

MySQL 저장 프로시저를 호출하기 전에 입력 및 출력 매개변수(있는 경우)를 설정해야 합니다. 입력 매개변수는 setXXX() 메소드를 사용하여 설정하고, 출력 매개변수는 프로시저 호출 후 RegisterOutParameter() 메소드를 사용하여 등록합니다. 저장 프로시저를 실행하려면 CallableStatement.execute() 또는 CallableStatement.executeQuery() 메서드를 사용하십시오. 예:

ResultSet rs = stmt.executeQuery(); while (rs.next()) { // 处理查询结果 }
로그인 후 복사
  1. 연결을 닫고 리소스를 해제합니다

데이터베이스 연결과 CallableStatement 개체를 사용한 후에는 리소스 낭비와 메모리 누수를 방지하기 위해 연결을 닫고 적시에 리소스를 해제해야 합니다.

Java에서 MySQL 저장 프로시저를 호출하는 전체 코드 예제는 다음과 같습니다.

import java.sql.*; public class CallStoredProcedure { public static void main(String[] args) { try { Class.forName("com.mysql.cj.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/mydb"; String user = "myuser"; String password = "mypassword"; Connection conn = DriverManager.getConnection(url, user, password); String call = "{call GetProductList()}"; CallableStatement stmt = conn.prepareCall(call); ResultSet rs = stmt.executeQuery(); while (rs.next()) { // 处理查询结果 } rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } } }
로그인 후 복사

3. 요약

이 기사의 소개를 통해 독자는 Java 프로그램에서 MySQL 저장 프로시저를 호출하기 위한 기본 단계와 주의 사항을 배울 수 있습니다. 저장 프로시저를 사용하면 SQL 실행 효율성과 데이터 처리 성능을 향상시킬 수 있으며 복잡한 웹 애플리케이션 개발에 있어 실질적인 가치가 매우 높습니다.

위 내용은 Java 프로그램에서 MySQL 저장 프로시저를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!