DAO, DTO 구조에 대한 이해가 부족하기에 이에 대한 연습을 하기위해 나만의 간단한 형식의 Main, DAO, DTO 클래스를 작성하여 데이터 프린트를 해보았다.
데이터 교환 역할을 할 DTO
// SmallDto.java
package dto;
public class SmallDto {
private int num1;
private int num2;
public SmallDto() {}
public SmallDto(int num1, int num2) {
super();
this.num1 = num1;
this.num2 = num2;
}
public int getNum1() {
return num1;
}
public void setNum1(int num1) {
this.num1 = num1;
}
public int getNum2() {
return num2;
}
public void setNum2(int num2) {
this.num2 = num2;
}
@Override
public String toString() {
return "SmallDto [num1=" + num1 + ", num2=" + num2 + "]";
}
}
두 개의 Int num1, num2 를 선언하고 constructor, getter, setter 그리고 toString 을 만들어 둔다.
데이터 접근 역할을 할 DAO
package dao;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import dto.SmallDto;
public class SmallDao {
private List<SmallDto> list = new ArrayList<SmallDto>();
public SmallDao() {
SmallDto sdto = new SmallDto();
sdto = new SmallDto(1111, 2222);
list.add(sdto);
for (int i = 0; i < 5; i++) {
// list.add(new SmallDto(i, i+1));
sdto = new SmallDto(i * 2, i * 2 + 1);
list.add(sdto);
System.out.println("sdto.getNum1(): " + sdto.getNum1());
System.out.println("sdto.getNum2(): " + sdto.getNum2());
}
for (SmallDto sdtols : list) {
System.out.println(sdtols.toString());
}
System.out.println(Arrays.deepToString(list.toArray()));
int index = 3;
list.get(index).setNum1(7777);
list.get(index).setNum2(7777);
System.out.println(Arrays.deepToString(list.toArray()));
}
}
ArrayList 를 만들어 DTO 를 통해 데이터를 저장하고 getter 를 통해 이를 출력해본다. 그리고 setter 을 통해 리스트 특정 위치의 데이터를 변경한다.
DAO 를 동작시켜 줄 Main
// Main.java
package main;
import dao.SmallDao;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
SmallDao dao = new SmallDao();
}
}
코드를 실행한 출력 결과
sdto.getNum1(): 0
sdto.getNum2(): 1
sdto.getNum1(): 2
sdto.getNum2(): 3
sdto.getNum1(): 4
sdto.getNum2(): 5
sdto.getNum1(): 6
sdto.getNum2(): 7
sdto.getNum1(): 8
sdto.getNum2(): 9
SmallDto [num1=1111, num2=2222]
SmallDto [num1=0, num2=1]
SmallDto [num1=2, num2=3]
SmallDto [num1=4, num2=5]
SmallDto [num1=6, num2=7]
SmallDto [num1=8, num2=9]
[SmallDto [num1=1111, num2=2222], SmallDto [num1=0, num2=1], SmallDto [num1=2, num2=3], SmallDto [num1=4, num2=5], SmallDto [num1=6, num2=7], SmallDto [num1=8, num2=9]]
[SmallDto [num1=1111, num2=2222], SmallDto [num1=0, num2=1], SmallDto [num1=2, num2=3], SmallDto [num1=7777, num2=7777], SmallDto [num1=6, num2=7], SmallDto [num1=8, num2=9]]
'공부하기 > Java 겹바림' 카테고리의 다른 글
[Java 복습] 단순한 성적 관리 CLI (0) | 2022.12.26 |
---|---|
[Java 복습] 프린트 그리고 변수 (0) | 2022.12.19 |
Java 시작 (0) | 2022.12.19 |