
이어서 Controller에서
사용자가 2를 입력했을 때의 코딩을 살펴보겠습니다
전체 출력 부분으로
코드의 흐름은
1. 출력할 데이터를 DB(Model)한테 받아온다
2. list에 data를 전달한다
3. view에 출력한다
PersonDTO personDTO = new PersonDTO();
PersonDTO의 객체를 생성합니다
( 자료화 시킨 클래스를 DTO라 하는데 그 안의 멤버변수를 사용하기 위해서 == 결합도가 낮아지니까 )
PersonDTO에는 condition이라는 분기판단용 멤버변수이다
💡 "분기 판단용"이란?
어떤 조건(condition) 값에 따라 다른 코드가 실행되도록 하는 용도예요.
ex) “사용자가 선택한 검색 조건이 제목인지, 작성자인지”
“요청한 작업이 등록인지, 수정인지”
“현재 상태가 승인인지, 대기인지”
같은 걸 구분할 때 쓰입니다.
personDTO.setCondition("ALL");
public class PersonDTO {
private int num;
private String name;
private String type;
private String condition; // 분기판단용 컨디션
private String keyword;
// ALL이 condition 매개변수에 들어감
public void setCondition(String condition) {
this.condition = condition;
}
}
personDTO의 setCondition에 ALL이 들어가면
분기판단용 멤버변수 this.condition에 ALL값을 할당시킨다
ArrayList<PersonDTO> datas = model.selectAll(personDTO);
DB한테 데이터를 받아온다
db == model
model의 selectAll 메서드를 통해 personDTO(=현재 "ALL")를 datas에 저장
view.printDatas(datas);
그 datas의 list에 전달한다
view == 사용자
else if(command == 2) {
PersonDTO personDTO = new PersonDTO();
personDTO.setCondition("ALL");
// DB한테 data 받아오기
ArrayList<PersonDTO> datas = model.selectAll(personDTO);
view.printDatas(datas); // list 전달.
}
Controller의 코드 일부분
'🍏 개발일기' 카테고리의 다른 글
| interface 이해하기 (with 추상클래스) (0) | 2025.10.26 |
|---|---|
| MCV 연습하기 - 3. 주민 1명 출력 (0) | 2025.10.24 |
| MVC 연습하기 - 1. 주민 추가 (0) | 2025.10.24 |
| MVC디자인패턴 (0) | 2025.10.23 |
| 이터레이터 | 스레드 (0) | 2025.10.23 |