728x90
반응형

오라클을 연결하는 메소드를 만들었으니 이번엔
테이블을 불러오는 클래스를 만들어보겠습니다.
필요한 클래스는 2개
DAO : Data Access object 데이터 접근객체
=> 각각의 작업(CRRUD)들을 메소드 단위로 보관하고 호출하여 사용
-> 일상생활의비유 ==> 택배기사님
DTO : Data transfer object 데이터 전달 객체
ex) exam 테이블에서 필요한 클래스
클래스에서 필요한 3개 요소 / 맴버필드(변수) , 메소드 , 생성자
==>일상생활의 비유 ==> 포장상자
코드를 예를 들어보자.
일단 exam table의 Dto 먼저 코드를보겟다
public class ExamDto {
private int examId;
private String student;
private String subject;
private String type;
private int score;
//기본생성자
public ExamDto() {
super();
}
//세터 게터
public int getExamId() {
return examId;
}
public void setExamId(int examId) {
this.examId = examId;
}
public String getStudent() {
return student;
}
public void setStudent(String student) {
this.student = student;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
맴버 필드와 값을 불러오고 저장하기 위한 세터와 게터 메소드 그리고 초기화를 위한 생성자 는 기본으로 깔고 들어간다 . (필요하다면 더만들어도된다)
이제 이 Dto를 기반으로 Dao를 작성해보자
public void insert(ExamDto examDto) throws Exception{
Connection con =JdbcUtils.connect("kh", "kh");
String sql= "insert into exam values(exam_seq.nextval,?,?,?,?)";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1,examDto.getStudent() );
ps.setString(2, examDto.getSubject());
ps.setString(3, examDto.getType());
ps.setInt(4, examDto.getScore());
ps.execute();
con.close();
}
코드가 달라진것이 잇는가? 달라졋다면 대입값에 게터메소드가 들어갓다는거정도?...
이제두개의 클래스를 활용하여 exam테이블을 불러와보자
Dto클래스를 불러와서 포장을 먼저해주자
//ExamDto를 준비하여 데이터를 미리 포장한뒤 등록하도록 처리
ExamDto examDto = new ExamDto(); //비어잇는 객체 생성
examDto.setStudent("거북왕");
examDto.setSubject("데이터입출력구현");
examDto.setType("서술형");
examDto.setScore(80);
택배기사님을 불러서 발송 !
//1.모듈 객체 생성
ExamDao examDao =new ExamDao();
examDao.insert(examDto); //데이터를 의미잇는 단위로관리
System.out.println("끝!");
이부분은 모르면 씹어먹어야한다고 강조해주셧다.
'[DBMS] > - Oracle' 카테고리의 다른 글
[Oracle]Jdbc,beans,delete (0) | 2022.05.31 |
---|---|
[Oracle] jdbc,bean,update (0) | 2022.05.31 |
[Oracle] jdbc (Select 원하는 항목 검사 ) (0) | 2022.05.31 |
[Oracle] jdbc , 단일조회 (0) | 2022.05.31 |
[Oracle]Like 조건절 검색 (0) | 2022.05.31 |
댓글