ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] JDBC 연동
    개발입문/JAVA 2017. 1. 21. 00:43

    JDBC


    이 글에서는 Eclipse 에서 java 로 DB 에 접속, SQL 문을 전송할 수 있도록 준비한다. 

    Java DataBase Connectivity

    Java 에서 제공해 주는 DB 관련 처리를 하는 데 필요한 API 들이다. 애플리케이션 (eg. Eclipse) 에서 DB에 연동, SQL 문장 전송 등의 작업을 할 수 있게 제공하는 여러 가지의 인터페이스들이 JDBC 에 존재한다.


    DB 접속

    1. DB 연결 

    어플리케이션에서 DB에 Connection(연결)이 되어야 한다. 해당 DBMS 에서 제공하는 드라이버가 메모리에 올라와야한다. 각 벤더(Oracle, MySQL, MariaDB 등) 마다 자바에서 해당 DBMS에 연동할 수 있도록 드라이버를 제공해준다.

    애플리케이션 ---> 드라이버 ---> DBMS


    2. DB 연결에 필요한 정보

    1) 사용자 생성 & 확인

    어떤 사용자로 DB에 연결할 것인지 확인합니다. 아래 GRANT 문을 전송하면 다음과 같습니다.

    - javaDB 유저가 localhost 환경에서
    - 패스워드를 javaDB로 입력하고
    - 모든 DB와 테이블에 모든 종류의 SQL문을 실행 가능

    유저 및 접속권한에 대한 모든 정보는 mysql.user 에서 확인할 수 있습니다. 

    GRANT ALL PRIVILEGES ON *.* TO 'javaDB'@'localhost' IDENTIFIED BY 'javaDB' WITH GRANT OPTION;


    [LINK] 기타 조건으로 사용자 생성


    2) 프로젝트에 .jar 파일 추가

    .jar 파일은 Java ARchive 로 일종의 압축포맷입니다. 저희는 MySQL 을 위한 DB Driver 를 추가합니다. 만약 이 .jar 파일이 없으실 경우 MySQL 공식 홈페이지에서 다운로드 받으세요 (아래 링크)

    Connector/J 다운로드

    - Project [Properties] 
    - Java Build Path - [Library] - [Add External Jars]
    - mysql-connector-java-5.0.8.bin.jar 선택, 추가, [OK]



    3) MySQL 에 접속 테스트

    [Doc] java.sql.*

    - import java.sql.Connection, java.sql.DriverManager
    - jdbcURL, userID, userPW 를 통해
    - Connection 생성: con = DriverManager.getConnection(jdbcURL, userID, userPW);
    - "Connection Success" 출력하면 접속 확인


    4) Data Source Explorer 뷰

    - [Window] - [Show View] - [Other]
    - Data Management - Data Source Explorer 선택


    5) Connection Profile

    - Database Connections - [New]
    - [MySQL] 선택
    - MysQL Drier Definition 지정: 드라이버 템플릿, Jar 파일, 속성 지정 완료
    - Ping test 확인 

    6) .sql 파일 생성

    - 프로젝트 선택 [New] - [SQL File]
    - FileName, Database server type, Connection Profile name 잘 설정
    - test.sql 생성완료


    7) .sql 문 실행 (전송)

    - sql 문 작성
    - Execute All / Selected Text  / Current Text
    - 하단 SQL Results 뷰에서 결과 확인



    '개발입문 > JAVA' 카테고리의 다른 글

    [30일코딩] 객체지향언어 Java  (0) 2017.05.03
    [30일코딩] 표준스트림  (0) 2017.05.03
    [30일코딩] Hello World 프로젝트  (0) 2017.05.03
    [JAVA] JDBC 한글깨짐  (0) 2017.01.22
    [JAVA] 빌드 - Build (Source, Project, Library)  (0) 2017.01.21

    댓글

Designed by Tistory.