본문 바로가기

2023.11.21-2024.05.31

231227 JAVA EmployeesDTO

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package com.sukgi.dto;
 
public class EmployeesDTO {
    private int emp_no;
    private String birth_date, first_name, last_name, gender, hire_date;
    public int getEmp_no() {
        return emp_no;
    }
    public void setEmp_no(int emp_no) {
        this.emp_no = emp_no;
    }
    public String getBirth_date() {
        return birth_date;
    }
    public void setBirth_date(String birth_date) {
        this.birth_date = birth_date;
    }
    public String getFirst_name() {
        return first_name;
    }
    public void setFirst_name(String first_name) {
        this.first_name = first_name;
    }
    public String getLast_name() {
        return last_name;
    }
    public void setLast_name(String last_name) {
        this.last_name = last_name;
    }
    public String getGender() {
        return gender;
    }
    public void setGender(String gender) {
        this.gender = gender;
    }
    public String getHire_date() {
        return hire_date;
    }
    public void setHire_date(String hire_date) {
        this.hire_date = hire_date;
    }
    
    
 
}
 
cs

 

 

이 코드는 자바에서 데이터베이스 테이블의 레코드를 나타내기 위한 DTO(Data Transfer Object) 클래스인 EmployeesDTO를 정의하고 있습니다. DTO 클래스는 주로 데이터의 전달을 목적으로 사용되며, 데이터베이스 레코드와 일치하는 구조를 가지고 있습니다.

여기서 EmployeesDTO 클래스는 'employees' 테이블의 각 열에 해당하는 변수들과 이를 다루기 위한 getter와 setter 메소드들로 구성되어 있습니다. 각 변수는 private으로 선언되어 있으며, 이에 대한 접근을 위한 public getter와 setter 메소드가 제공되고 있습니다.

해당 클래스의 변수들과 메소드들을 간략히 설명하겠습니다:

  1. 변수:
    • private int emp_no;: 사원 번호를 나타내는 변수
    • private String birth_date;: 생년월일을 나타내는 변수
    • private String first_name;: 이름을 나타내는 변수
    • private String last_name;: 성을 나타내는 변수
    • private String gender;: 성별을 나타내는 변수
    • private String hire_date;: 입사일을 나타내는 변수
  2. Getter 및 Setter 메소드:
    • public int getEmp_no() / public void setEmp_no(int emp_no): emp_no 변수에 대한 getter와 setter 메소드
    • public String getBirth_date() / public void setBirth_date(String birth_date): birth_date 변수에 대한 getter와 setter 메소드
    • public String getFirst_name() / public void setFirst_name(String first_name): first_name 변수에 대한 getter와 setter 메소드
    • public String getLast_name() / public void setLast_name(String last_name): last_name 변수에 대한 getter와 setter 메소드
    • public String getGender() / public void setGender(String gender): gender 변수에 대한 getter와 setter 메소드
    • public String getHire_date() / public void setHire_date(String hire_date): hire_date 변수에 대한 getter와 setter 메소드

이렇게 구성된 DTO 클래스를 사용하면 데이터베이스 레코드의 각 필드에 대응하는 자바 객체를 표현할 수 있습니다. 데이터베이스와의 상호 작용 시에 이러한 DTO 클래스를 활용하여 데이터를 전달하거나 결과를 받아올 수 있습니다.

 

 

EmployeesDTO 클래스에서 변수들을 private로 선언하는 이유는 주로 캡슐화정보 은닉입니다.

  1. 캡슐화 (Encapsulation):
    • 클래스 내부의 상태(멤버 변수)를 외부에서 직접 조작하지 못하게 함으로써, 클래스의 내부 구현을 숨기고 외부에 공개된 인터페이스를 통해서만 상호작용하도록 하는 것을 말합니다.
  2. 정보 은닉 (Information Hiding):
    • 클래스의 내부 구현 세부사항을 외부에 감춤으로써, 외부에서는 클래스의 인터페이스에만 의존하게 하여 시스템의 유지보수성을 향상시킵니다.

구체적으로 private를 사용한 변수들에 대한 설명:

  • private int emp_no;: 사원 번호를 나타내는 변수. 외부에서 직접 접근하지 못하도록 하여 사원 번호를 읽거나 변경하는 동작을 제한합니다.
  • private String birth_date;: 생년월일을 나타내는 변수. 마찬가지로 외부에서 직접적인 접근을 막아 데이터의 무결성을 보호하고자 합니다.
  • 나머지 변수들에 대해서도 비슷한 이유로 private를 사용하여 외부에서의 직접적인 접근을 제한하고, getter와 setter 메소드를 통해 간접적으로 접근하도록 합니다.

이렇게 하면 외부에서 클래스의 상태를 무분별하게 변경하는 것을 방지하고, 변경이 필요한 경우에는 제어된 방법으로만 가능하도록 합니다.

'2023.11.21-2024.05.31' 카테고리의 다른 글

231227 JAVA Test-Employees  (0) 2023.12.27
231227 JAVA EmployeesDAO  (0) 2023.12.27
231227 JAVA DBConnection  (0) 2023.12.27
231226 JAVA EmployeesDTO  (0) 2023.12.27
231226 JAVA Test  (0) 2023.12.27