개발/정리

DAO(2)

Julybug 2021. 7. 4. 22:25
반응형
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
package org.comstudy21.saram.app;
 
import java.util.List;
import java.util.Scanner;
 
import org.comstudy21.saram.model.SaramDAO;
import org.comstudy21.saram.model.SaramDTO;
 
public class SaramApp {
    static SaramDAO dao = new SaramDAO();
    static Scanner scan = new Scanner(System.in);
    
    public static void main(String[] args) {
        System.out.println(":::: 사람 정보 관리 프로그램 ::::");
        while(true) {
            run();
        }
    }
    
    private static int menu(String[] items) {
        for(int i=0; i<items.length; i++) {
            System.out.print(i+1 + "." + items[i]+" ");
        }
        System.out.print("\nChoice>>> ");
        int no = scan.nextInt();
        return no;
    }
 
    
    public static void search() {
        int no = menu(new String[]{"아이디로검색","이름으로검색"});
        switch(no) {
        case 1 : findById(); break;
        case 2 : findByName(); break;
        defaultSystem.out.println("해당 사항 없습니다!");
        }
    }
    
    private static void findById() {
        System.out.println(":::: 아이디로 검색 ::::");
        System.out.print("검색 할 아이디: ");
        String id = scan.next();
        List<SaramDTO> list = dao.findById(id);
        showDtoList(list);
    }
 
    private static void findByName() {
        System.out.println(":::: 이름으로 검색 ::::");
        System.out.print("검색 할 이름: ");
        String name = scan.next();
        List<SaramDTO> list = dao.selectOne(new SaramDTO(null, name, 0));
        showDtoList(list);
    }
 
    public static void run() {
        int no = menu(new String[] {"INPUT","OUTPUT","SEARCH","MODIFY","DELETE","END"});
        switch(no) {
        case 1 : input(); break;
        case 2 : showList(); break;
        case 3 : search(); break;
        case 4 : modify(); break;
        case 5 : delete(); break;
        case 6 : end(); break;
        defaultSystem.out.println("해당 메뉴는 없습니다!");
        }
        System.out.println("-----------------------------------");
    }
    
    private static void modify() {
        System.out.println(":::: 수정 기능 ::::");
        // 수정 아이디 입력 ---> 수정 내용 입력
        System.out.print("수정 아이디 입력: ");
        String id = scan.next();
        List<SaramDTO> list = dao.findById(id);
        if(list.size() == 0) {
            System.out.println("--- 수정 할 내용 없습니다! ---");
            return;
        }
        System.out.print("새 이름: "); 
        String name = scan.next();
        System.out.print("새 나이: ");
        int age = scan.nextInt();
        dao.update(new SaramDTO(id, name, age));
        System.out.println("--- 수정 완료 ---");
    }
 
    private static void delete() {
        System.out.println(":::: 삭제 기능 ::::");
        System.out.print("삭제 아이디 입력: ");
        String id = scan.next();
        boolean isOk = dao.delete(new SaramDTO(id, null0));
        if(isOk) {
            System.out.println("--- 삭제 완료 ---");
        } else {
            System.out.println("--- 삭제 실패 ---");
        }
    }
 
    private static void end() {
        System.out.println(":::: 프로그램 종료 ::::");
        System.out.println("--- 수고하셨습니다. ---");
        System.exit(0);
    }
 
    private static void input() {
        System.out.println(":::: 사람 정보 입력 ::::");
        System.out.print("아이디 입력: ");
        String id = scan.next();
        System.out.print("이름 입력: ");
        String name = scan.next();
        System.out.print("나이 입력: ");
        int age = scan.nextInt();
        SaramDTO dto = new SaramDTO(id, name, age);
        dao.insert(dto);
    }
 
    public static void findList() {
        String id = "HONG";
        List<SaramDTO> list = dao.findById(id);
        if(list.size() <= 0) {
            System.out.println("출력 할 내용이 없습니다!");
        }
        for(SaramDTO saram: list) {
            System.out.println(saram);
        }
    }
    
    public static void showList() {
 
        List<SaramDTO> list = dao.selectAll();
        showDtoList(list);
    }
 
    private static void showDtoList(List<SaramDTO> list) {
        if(list.size() <= 0) {
            System.out.println("출력 할 내용이 없습니다!");
        }
        for(SaramDTO saram: list) {
            System.out.println(saram);
        }
    }
}
 
cs
반응형