28일 10/06

권준석·2022년 10월 6일
0

복습

목표 : 데이터를 영구적으로 저장하기위해 DB에 저장하겠다

DB는 공유하는 특징,DB는 테이블로 저장

1. DB에 접근하는 방식

드라이버 설치 후 절차

  1. 드라이버(클레스) 로드
  • DB에 저장하기위해 오라클에서 제공하는 자원을 로딩
  1. 커넥션 가져오기(연결 자원 획득)
  • DB는 공용으로 사용
  • 절차는 연결자원 획득, 작업 수행, 연결자원 반납 의 순서
  1. 쿼리문 생성,전송
  • 작업 수행을 위해 쿼리문 작성
  • 완성되지 못한부분은 ?로 표기
  • 완성되지 못한 쿼리문은 preperedStated사용
  • 완성된 쿼리문은 Stated사용
  1. 리턴값 저장
  • 쿼리를 전송하고 리턴값을 저장
  1. 자원 반납
  • 2번째에서 획득한 자원 반환

이 작업을 원활히 하기 위해서
DAO와 DTO를 만들었다

DAO

  • DB에 실제 작업하기 위한 관련 작업이 모여있는 클래스(객체)
  • 작업하기 위해 위의 절차가 필요하다
  • 테이블이 존재하는 수만큼 존재하면 좋다
  • 대표적인 작업 CRUD
  • 쿼리를 작성할때나 전송할때 리턴값 고려

DTO

  • DB에서 튜플에 저장할 정보를 갖고 있거나(Getter) 또는
    DB에서 가져온 튜플을 자바로 가져오는(Setter) 객체
  • 가독성을 위해 이름을 DTO로 하는 것이 좋다
  • 전역변수의 Getter, Setter가 존재해야 DTO이다
  • 전역변수명은 DB테이블의 속성과 일치하거나 포함하는것이 좋다
  • DTO객체 하나가 튜플 하나을 의미

================================================

오라클 연결 메서드

connection 클래스

  • 자바와 DB을 연결하기위해 사용

Class.forName("oracle.jdbc.driver.OracleDriver")

  • 드라이버 에 있는 내용을 사용하기위해 사용하는 메서드
  • 클래스의 이름을 매개 변수로 받아 class클래스 에게 리턴해주는 역활

Statement 클래스

  • SQL 쿼리를 실행하는역활
  • 스스로는 SQL 쿼리를 이해 못함 -> 전단역활
  • SQL 관리
  • SQL 코드가 완성되었을때 사용

PreparedStatement 클래스

  • Statement클래스의 기능 향상
  • 매개변수 관련 작업 특화
  • 코드의 안정성과 가독성이 높음
  • 쿼리가 완성되지 않았을때 사용

Execute 클래스

  • 쿼리를 수행할때 사용
  • 수행결과는 boolean타입

ExecuteQuery

  • select 쿼리을 수행할때 사용
  • 리턴값으로 ResultSet 객체의 값을 반환
  • 사용시 ResultSet 객체 필요

ExecuteUpdate

  • select쿼리를 제외한 다른 쿼리를 수행할때 사용
  • 리턴값으로 Int타입 값을 반환

ResulSet

  • select쿼리의 리턴값을 저장하는 객체

try catch 문

  • 예외 처리 코드를 위해 사용되는 문법
  • 에러가 발생할수있는 코드에 사용된다

구문

try {
에러가 발생할수 있는코드

}catch (Exception e) { 오류 출력(방법은 여러가지)
e.printStackTrace();
}finally{
무조건 수행

}

==================================================

DB 저장

오후 과제

*소스를 8교시 까지 제출 < 소스만 >

  1. 프로젝트 생성
  2. 기능 회원 관리기능
  3. 키보드를 선택하여 매뉴를 분기

고객 정의 : 아이디 ,이름,비번,주소,포인트(숫자)
id, name, pass, addr, point < DTO,DB테이블 필드명으로 통일

기능 O
1. 고객의 정보를 저장한다
2. 목록보기
3. 고객 수정 : 아이디을 검색해서 정보 수정을 수정 (아이디 수정 불가)
4. 고객 삭제 : 아이디로 삭제
5.고객 검색 : 아이디로 검색 해당 고객의 정보 모두보기

업그레이드
6. 고객 수정 기능O
아이디로 검색후 등록된 사용자면 수정하고, 등록된 사용자가 아니면 종료하고 메뉴로 이동

7.고객 검색은 검색어로 아이디나 이름이 검색어에 포함되는 모든 고객의 정보를 출력O

  1. 1번 기능을 업그레이드, 고객이 아이드를 입력후 이미 등록된 아이디면 다시입력하세요
    사용가능하다면 다음의 정보를 입력O

1번 부터 기능 구현
다하면 소스 개인톡으로 전송
7교시까지 한것을 8교시 시작하면서 전송

profile
ㅇㅇ

0개의 댓글