개인공부/[DB] / / 2020. 11. 24. 22:47

[Java/JDBC] postgreSQL연결 및 실행

PostgreSQL JDBC 사용법을 정리하려 한다.

우선 JAVA에서 JDBC를 이용하여 DB를 사용하려 하면 JDBC 실행해주는 Driver부터 설치해야 한다.

사용하는 DB(MySQL, PostgreSQL.. )에 따라서 홈페이지에서 설치해주면 된다. 


Driver 설치

-우선 Driver를 설치한다. 

-설치 후 프로젝트 설정> Libraries> 다운로드한 jar파일 선택

 


Programming

1. 드라이버 로드

Class.forName("org.postgresql.Driver");

 

2. DB 접속

Connection conn = null;
conn= DriverManager.getConnection(url,user,passwd);//Conenction인스턴스 생성

 

3. Statement생성 & SQL전송

//member 테이블 모든 원소 추출 SQL쿼리
String sql = "select * from member";
Statement stmt =null;
...
stmt=conn.createStatement();
rs=stmt.executeUpdate(sql1);

 

4. 결과받기

//SQL실행
rs=stmt.executeQuery(sql);

//받은 레코드들을 한줄씩 수행
while(rs.next()) {
                    int Id = rs.getInt("mid");             
                    String Name = rs.getString("name");		
                    String Number = rs.getString("number");	
                    String Address = rs.getString("address");	

                    System.out.println("ID : " + Id + " Name : " + Name + " Numebr : " + Number + " Address : " + Address);
                }

 


결과 소스코드

package com.company;

import java.sql.*;

public class selectQeury {
    public static void main(String[] args) {
        Connection conn = null;

        String url="jdbc:postgresql://localhost:5432/DB명";
        String user="ID";
        String passwd="비밀번호";

        ResultSet rs= null; //쿼리 실행 결과값 받아오기
        Statement stmt =null;
        String sql = "select * from member";
        try{

            //드라이버 로딩
            Class.forName("org.postgresql.Driver");
            System.out.println("driver loading Success");

            try{
                //DB접속
                conn= DriverManager.getConnection(url,user,passwd);
                System.out.println("connect success");

                stmt=conn.createStatement();
                rs=stmt.executeQuery(sql);

                while(rs.next()) {
                    int Id = rs.getInt("mid");             
                    String Name = rs.getString("name");		
                    String Number = rs.getString("number");	
                    String Address = rs.getString("address");	

                    System.out.println("ID : " + Id + " Name : " + Name + " Numebr : " + Number + " Address : " + Address);
                }

                System.out.println("executeQuery success");
                rs.close();
                stmt.close();
                conn.close();
            }catch (SQLException e){
                System.out.println(e);
                System.out.println("DB접속에러");
            }
        }catch (Exception e){
            System.out.println("Exception: "+e);
        }
    }
}

정리 및 요약

- JDBC는 Java언어로 작성된 프로그램을 DB에 연결해줄 수 있게 하는 인터페이스, 클래스 집합체이다.

- 3가지 인터페이스( Connection, Statement, ResultSet)

- Connection 은 Java와 DB를 연결하는 객체의 인터페이스이다

- Statement 주요 메서드

메서드명 리턴타입 기능
execute(String sql) boolean sql문 실행하고 실패하면 false반환
executeQuery(String sql) ResultSet sql문 실행하고 결과로 Resultset반환
executeUpdate(String sql) int 쿼리문 실행하고 영향을 받은 행의 갯수나 0을 반환 실패한 경우 에러발생
close() void Statement 리소스 반환

- ResultSet은 sql실행 후 결과가 있을 때만 사용 

- try/catch 해주기

- JDBC 드라이버 로딩> connection 인스턴스 생성(DB 연결) > Statement로 쿼리 실행 > ResultSet으로 결과받아서 필요한 데이터 처리 > Connection, Statement, ResultSet를 close() 해주기

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유