JDBC 연결 데이터베이스
• 7 단계가 포함 된 JDBC를 사용하여 데이터베이스에 연결하는 프로그램을 만듭니다.
1. JDBC 드라이버로드 :
데이터베이스에 연결하기 전에 먼저 JVM (Java Virtual Machine)에 연결하려는 데이터베이스의 드라이버를로드해야합니다.
이것은 java.lang.class 클래스의 정적 메소드 ForName (String ClassName)을 통해 달성됩니다.
예를 들어:
{// mySQL의 드라이버 클래스를로드하십시오 .forname ( "com.mysql.jdbc.driver"} catch (classNotFoundException e) {System.out.println ( "드라이버 클래스를 찾을 수 없음, 실패했습니다!" ); 성공적인로드 후 드라이버 클래스의 인스턴스가 DriverManager 클래스에 등록됩니다.
2. JDBC 연결에 대한 URL을 제공하십시오
• Connection URL은 데이터베이스에 연결할 때 프로토콜, 하위 프로토콜 및 데이터 소스 식별자를 정의합니다.
• 쓰기 양식 : 프로토콜 : 데이터 소스 식별 프로토콜 : JDBC에서는 항상 JDBC로 시작합니다. 브리지 연결 드라이버 또는 데이터베이스 관리 시스템 이름입니다.
데이터 소스 식별 : 데이터베이스 소스가 발견되는 주소 및 연결 포트 태그.
예 : (MySQL의 연결 URL)
jdbc : mysql :
// localhost : 3306/test? useUnicode = true & characterencoding = gbk;
useUnicode = true : 유니 코드 문자 세트를 사용하는 것을 의미합니다. 문자 코딩이 설정된 경우
GB2312 또는 GBK,이 매개 변수는 true로 설정해야합니다. 캐릭터 엔코딩 = GBK : 문자 인코딩 메소드.
3. 데이터베이스 연결을 만듭니다
• 데이터베이스에 연결하려면 java.sql.drivermanager에서 요청하고 연결 객체를 가져와야합니다.
이 개체는 데이터베이스에 대한 연결을 나타냅니다.
• DriverManager의 GetConnectin (String URL, String username,
String Password) 메소드는 데이터베이스의 지정된 경로, 데이터베이스 사용자 이름 및 비밀번호를 연결하여 얻을 수 있습니다.
예를 들어:
// MySQL 데이터베이스를 연결하면 USERNAME 및 비밀번호는 ROT 문자열입니다 DriverManager get get} catch (sqlexception se) { "데이터베이스 연결 실패!");4. 진술을 만드십시오
• SQL 문을 실행하려면 java.sql.statement 인스턴스를 얻어야합니다
유형:
1. 정적 SQL 문을 실행하십시오. 일반적으로 명령문 인스턴스를 통해 구현됩니다.
2. 동적 SQL 문을 실행하십시오. 일반적으로 준비된 체계 인스턴스를 통해 구현됩니다.
3. 데이터베이스 저장 프로 시저를 실행하십시오. 일반적으로 CallableStatement 인스턴스를 통해 구현됩니다.
특정 구현 방법 :
stmt = con.createstatement ();
5. SQL 문을 실행하십시오
명령문 인터페이스는 SQL 문을 실행하는 세 가지 방법을 제공합니다 : ExecuteQuery, ExecuteUpdate
그리고 실행
1. resultSet executeQuery (String SQLString) : 데이터베이스를 쿼리하고 결과 세트 (resultSet) 객체를 반환하기 위해 SQL 문을 실행합니다.
2. int executeUpdate (String sqlstring) : 삽입, 업데이트 또는
다음과 같은 문 및 SQL DDL 문을 삭제하십시오. 테이블 및 드롭 테이블 작성 등
3. Execute (SQLString) : 여러 결과 세트, 다중 업데이트 수 또는이 둘의 조합을 반환하는 명령문을 실행하는 데 사용됩니다.
특정 구현 코드 :
resset rs = stmt.executeQuery ( "선택 *에서 ...");
6. 처리 결과
두 가지 상황 :
1. 업데이트 실행은이 작업의 영향을받는 레코드 수를 반환합니다.
2. 쿼리를 실행하여 반환 된 결과는 resultSet 객체입니다.
• resultSet에는 SQL 문의 조건을 충족하는 모든 행이 포함되어 있으며 Get 메소드 세트를 통해이 행의 데이터에 대한 액세스를 제공합니다.
• 결과 세트 (resultset) 객체의 액세스 방법을 사용하여 데이터를 가져옵니다.
while (rs.next ()) {문자열 name = rs.getString ( "name");(열은 왼쪽에서 오른쪽으로 번호가 매겨지고 열 1에서 시작합니다)
7. JDBC 객체를 닫습니다
작업이 완료된 후에는 모든 JDBC 객체가 닫아 JDBC 리소스를 해제해야합니다.
1. 레코드 세트를 닫으십시오
2. 클로스 진술
3. 연결 객체를 닫습니다
if (rs! = null) {// 레코드 세트를 닫으십시오 try {stmt.close ()} catch (sqlexception e) {e.printstacktrace (); ) {e .printstacktrace ()};예제 코드 :
com.b510; / br> * @date 2012-7-16 * */ public class jdbctest {public static void main (String [] args) {string driver = "com.mysql.jdbc.driver"; String Password = "Root"; "루트"; Connection Conn = getConnection (URL, 사용자 이름, 비밀번호); ( "id :" + rs.getint (1) + "이름 :" + rs.getString (2) + "암호 :" + rs.getString (3)); null) {rs.close ()} catch (sqlexception e) {e.printstacktrace ()}; sqlexection e) {e. CATCH (예외 e) {e .printstacktrace ()}; 실행 효과 :
ID : 3 이름 : Hongten 비밀번호 : 123