지난 포스팅은 MAP객체의 KEY값에 관계없이 출력하는 샘플코드를 작성해보았습니다.

이번에는 OBJECT 타입에 상관없이 DTO/VO 상관없이 한번에 읽어서 읽어오는 코드를 작성해 볼까 합니다.


테스트를 위해서 임의의 object 클래스를 생성해보도록 하겠습니다.


DTO.java


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
public class DTO {
    private int seq;
    private String title;
    private String content;
    private Date createdate;
 
    public int getSeq() {
        return seq;
    }
 
    public void setSeq(int seq) {
        this.seq = seq;
    }
 
    public String getTitle() {
        return title;
    }
 
    public void setTitle(String title) {
        this.title = title;
    }
 
    public String getContent() {
        return content;
    }
 
    public void setContent(String content) {
        this.content = content;
    }
 
    public Date getCreatedate() {
        return createdate;
    }
 
    public void setCreatedate(Date createdate) {
        this.createdate = createdate;
    }
}


VO.java


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
public class VO {
    private String titlevo;
    private String contentvo;
    private int hitnumvo;
 
    public String getTitlevo() {
        return titlevo;
    }
 
    public void setTitlevo(String titlevo) {
        this.titlevo = titlevo;
    }
 
    public String getContentvo() {
        return contentvo;
    }
 
    public void setContentvo(String contentvo) {
        this.contentvo = contentvo;
    }
 
    public int getHitnumvo() {
        return hitnumvo;
    }
 
    public void setHitnumvo(int hitnumvo) {
        this.hitnumvo = hitnumvo;
    }
}


테스트를 위하여 2개의 클래스를 생성하였습니다.

웹으로 이야기하자면 DTO 혹은 VO라고 하죠


각 테스트 코드는 다음과 같습니다.


DTO 클래스 호출시


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public static void main(String ar[]){
    DTO dto=new DTO();
    dto.setSeq(1);
    dto.setTitle("제목");
    dto.setCreatedate(new Date());
    dto.setContent("내용내용");
    try{
        Object obj=dto;
        for (Field field : obj.getClass().getDeclaredFields()){
            field.setAccessible(true);
            Object value=field.get(obj);
            System.out.println(field.getName()+","+value);
        }
    }catch (Exception e){
        e.printStackTrace();
    }
}


DTO 코드 실행 결과






VO 클래스 호출시


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public static void main(String ar[]){
    VO vo=new VO();
    vo.setHitnumvo(10);
    vo.setContentvo("VO 컨텐츠 내용입니다.");
    vo.setTitlevo("VO 타이틀입니다.");
    try{
        Object obj=vo;
        for (Field field : obj.getClass().getDeclaredFields()){
            field.setAccessible(true);
            Object value=field.get(obj);
            System.out.println(field.getName()+","+value);
        }
    }catch (Exception e){
        e.printStackTrace();
    }
}


VO 클래스 실행 결과





Map객체 key/value 한방에 get해오기와 마찬가지로

 정상적으로 모든 변수와 그에 속하는 값들을 읽어왔네요~

Map 객체 한번에 읽어오는것은 하단 포스팅을 참고하시면 되시겠습니다 ^^



2014/10/07 - [코드저장소/java] - Map객체의 key값을 읽어서 value값 한번에 추출하기



by 개발로짜