토비의 스프링 1-1 (간단한 DAO 만들기)

Back-End/Spring 2020. 12. 22. 05:00
728x90
반응형


사용자 정보를 JDBC API를 통해 DB에 저장하고 조회할 수 있는 DAO 만들기



 

 - DAO -


 DAO (Data Access Object) 는 DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트를 말한다. 




User 클래스 만들기 (사용자 정보 - id, name, password를 저장한 클래스)



 

 package springbook.user.domain;


 public class User {

String id;

String name;

String password;


public String getId() {

return id;

}


public void setId(String id) {

this.id = id;

}


public String getName() {

return name;

}


public void setName(String name){

this.name = name;

}


public String getPassword() {

return password;

}


public void setPassword(String password) {

this.password = password;

}

  }




User 정보가 담길 테이블을 생성


 

  create table users (

id varchar(10) primary key,

name varchar(20) not null,

password varchar(10) not null

  )





 

  자바빈


 자바빈은 원래 비주얼 툴에서 조작 가능한 컴포넌트를 말합니다. 


 자바의 주력 개발 플랫폼이 웹 기반의 엔터프라이즈 방식으로 바뀌면서 비주얼 컴포넌트로서 자바빈은 인기를 잃어 갔지만,


 자바빈의 몇 가지 코딩 관례는 JSP 빈, EJB와 같은 표준 기술과 자바빈 스타일의 오브젝트를 사용하는 오픈소스 기술을 통해 계속 이어져 왔다.


 디폴트 생성자 : 자바빈은 파라미터가 없는 디폴트 생성자를 가지고 있어야 한다.


 프로퍼티 : 자바빈이 노출하는 이름을 가진 속성을 프로퍼티라고 한다. 프로퍼티는 set로 시작하는 수정자 메소드 (setter) 와 get로 시작하는

               get으로 시작하는 접근자 메소드 (getter) 를 이용해 수정 또는 조회할 수 있다.




JDBC를 이용하는 작업의 일반적인 순서. (DB 연결)


1. DB연결을 위한 Connection을 가져옵니다.


2. SQL을 담은 Statement를 만듭니다.


3. 만들어진 Statement를 실행합니다.


4. 조회의 경우 SQL 쿼리의 실행 결과를 ResultSet로 받아서 정보를 저장할 오브젝트에 옮겨줍니다.


5. 작업중에 생성된 Connection, Statement, ResultSet 같은 리소스는 작업을 마친 후 반드시 닫아줍니다.


6. JDBC API가 만들어내는 예외 (exception) 를 잡아서 직접 처리하거나, 메소드에 throws를 선언해서 예외가 발생하면 

메소드 밖으로 던지게 합니다.




-계속-

728x90
반응형
: