일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 데이터베이스
- 데이터분석
- 자바스크립트심화
- SQL
- CSS
- JDBC
- JSP/Servlet
- 파이썬
- 자바 실습
- 혼공머신
- 딥러닝
- 컴퓨터비전
- 정보처리기사실기
- 정보처리기사필기
- 자바
- 상속
- ChatGPT
- rnn
- 컴퓨터구조
- JSP
- 중학수학
- html/css
- 디버깅
- 순환신경망
- 머신러닝
- 자바스크립트
- 개발일기
- c언어
- 중학1-1
- 연습문제
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
자바 JDBC 1 - JDBC 기초 실습해보기 1 : JDBC가 필요한 이유 및 오라클 DB로 테이블 생성하기 본문
자바 JDBC 1 - JDBC 기초 실습해보기 1 : JDBC가 필요한 이유 및 오라클 DB로 테이블 생성하기
huenuri 2024. 12. 12. 13:42이제 JDBC 공부를 하려고 한다. 이 과목은 Java에도 있고 JSP에도 나오는데 우선 자바를 기준으로 공부를 시작할 것이다.
JDBC는 왜 필요할까?
데이터는 휘발성 데이터이며 재실행이나 재부팅을 하면 사라지는 데이터이다. 예를 들어, 로그인을 하는 프로그램을 했을 때 회원가입을 하면 데이터가 모두 사라질 수도 있다. 그렇기에 보통은 비휘발성 데이터를 사용한다. 지금까지 자바 프로그래밍을 할 때 데이터가 사용 후 사라지는 휘발성 데이터를 만들었지만, 이제는 데이터베이스에 저장하는 비휘발성 데이터를 만들어보려고 한다. 그리고 데이터베이스에서 가져온 저장한 데이터를 자바에서 확인하는 작업도 진행할 것이다.
JDBC는 Java DataBase Connected의 약자로 자바로 데이터베이스를 연결하는 것이다. JDBC는 어떤 연결을 하든지 코드가 변하지 않고 쿼리문만 바뀌기에 개발자의 경력이 낮고 높음에 관계없이 코드가 같다. 처음에 이 코드를 외우는 것이 어렵지 익숙해지면 괜찮아진다.
JDBC은 API라는 인터페이스가 존재한다. 인터페이스란 프로젝트 지침서와 비슷하다. 자바를 연결할 때 데이터베이스의 종류가 매우 다양하다. Oracle, MariaDB, MySQL 등..
예를 들어 Java에서 오라클을 연결할 때 connective()라는 메서드를 사용해서 연결을 했다고 가정해 보자. 하지만 MySQL에서는 conn()이라는 메서드를 사용하고 있다. 그러면 자신의 코드에 있는 connective() 메서드를 conn()으로 모두 바꿔주어야 한다. 어떠한 DB를 연결하느냐에 따라 그에 대응하는 코드가 각기 달라지게 된다.
이렇게 되면 자바 개발자는 개발하기가 매우 힘들다. 자바 개발 회사에서 자바 개발자를 위해 DB 회사에 지침서를 내린다. 그러면 연결할 때, 해지할 때 등 지침서대로 따라서 쓰면 된다.
그래서 모든 DB들이 이 지침서에 따라 연결과 해지하는 기능의 코드들이 똑같다. 이제 JDBC를 실제로 사용하는 실습을 진행해 보겠다.
JDBC 기초 실습해 보기
JDBC를 하기 위해서는 라이브러리에 JARS 파일을 추가해야 한다. 이 내용은 내가 기록한 다른 페이지에 링크를 첨부해둔다.
1. JDBC 패키지에 클래스 만들기
패키지를 하나 만들고 첫 번째 클래스를 만들어준다. 클래스에는 main 체크를 하여 진행한다.
사용자가 Scanner를 통해서 이름, 나이, 성별, 학과를 입력받도록 코드를 작성했다. 그동안 자바에서 블록 복제가 되지 않아 무슨 문제인지 고민하며 많은 시도를 했었는데 오늘 해보니 잘 되었다. 근데 단축키가 달라져 있었다. 전에는 Shift + Alt를 눌러가 복제가 되었는데 이번에는 Ctrl로 바뀌어 있었다. 아무튼 잘 되어서 다행이다.
이렇게 내용을 입력했다. 하지만 입력된 내용은 재실행하면 사라지기에 데이터베이스의 테이블 형태로 만들어줄 것이다. 이제 데이터베이스를 접속하고 DB를 연결해 본다.
2. 오라클 developer 접속해서 테이블 만들기
데이터베이스 접속하는데 1시간 넘게 걸려 겨우 접속할 수 있었다. 하지만 정말 중요한 작업을 했다.
이제 테이블을 만들어보겠다. 접속을 하면 새 파일이 생성되는데 거기에 다음과 같이 작성하면 된다.
테이블을 만들고 실행한다.
이제 데이터베이스로 입력한 내용이 자바 프로그래밍으로 들어가도록 만들어보겠다.
3. JDBC 파일에서 코드 작성하기
먼저 변수를 자료형 형태로 만든다.
이 네 개의 자료형을 Student라는 하나의 자료형으로 묶어주려고 한다. 그러면 클래스가 필요하다.
4. Student 클래스 만들기
필드를 만들 때 캡슐화를 하여 private으로 선언하는 것이 좋다.
그런 다음 생성자와 getter, setter도 자동완성으로 만들어준다. 아직 메뉴가 조금 헷갈리니 과정을 한번 더 기록해 보기로 하자. 익숙해지면 이 과정은 생략하고 코드만 올릴 것이다.
5. 생성자 만들기
6. getter, setter 만들기
이렇게 코드를 작성한 다음에는 다시 main 클래스로 돌아가는데 이 부분은 다음 포스트에 이어서 진행해 보겠다.
학습을 마치고
JDBC 첫 수업인데 정말 만만치 않은 수업이었다. 수업은 총 6시간 분량으로 오늘 안에 다 듣고 책으로도 학습할 예정이었다. 하지만 책으로 하는 건 나중으로 미뤄야 할 것 같다. 오늘 이 수업 하나만 듣기에도 벅찰 테고, JSP에서도 JDBC가 나오는데 그 수업도 듣고 정리하려면 정말 할 게 많다.
점심식사 전까지 수업 하나만 더 듣고 아침 공부를 마칠 예정이다.
'프로그래밍 언어 > 자바' 카테고리의 다른 글
자바 JDBC 3 - JDBC 기초 실습해보기 3 : DB에 보낼 쿼리문 작성하고 실행하기 (0) | 2024.12.12 |
---|---|
자바 JDBC 2 - JDBC 기초 실습해보기 2 : 데이터베이스에 연결할 때 권한 요청 및 오류 잡는 방법 (0) | 2024.12.12 |
캡슐화와 정보 은닉 5 - 미션 문제 풀기 (0) | 2024.12.03 |
캡슐화와 정보 은닉 4 - 싱글톤 패턴 (0) | 2024.12.03 |
캡슐화와 정보 은닉 3 - 클래스의 상호작용 (0) | 2024.12.03 |