VO
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 | package hw_0317; public class VO { private String id; private String password; private String name; private String age; private String phonenumber; private String email; private String jumin; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } public String getPhonenumber() { return phonenumber; } public void setPhonenumber(String phonenumber) { this.phonenumber = phonenumber; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getJumin() { return jumin; } public void setJumin(String jumin) { this.jumin = jumin; } } | cs |
Service
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | package hw_0317; public class Service { public void membership(VO data) { if(data != null) { System.out.println("==============회원정보=============="); System.out.println("아이디 : " + data.getId()); System.out.println("비밀번호 : " + data.getPassword()); System.out.println("이름 : " + data.getName()); System.out.println("나이 : " + data.getAge()); System.out.println("전화번호 : " + data.getPhonenumber()); System.out.println("이메일주소 : " + data.getEmail()); System.out.println("주민번호 : " + data.getJumin()); System.out.println("==================================="); } else System.out.println("=====회원정보가 없습니다.====="); } } | cs |
Run
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 | package hw_0317; import java.util.Scanner; public class Run { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Service service = new Service(); boolean run = true; while(run) { VO vo = new VO(); while(true) { System.out.print("아이디를 입력하세요? "); String id = (sc.next()); if(id.matches("^[a-zA-Z0-9_-]{4,}+$")) { vo.setId(id); break; } else { System.out.println("아이디는 4자리 이상의 영(대/소)문자와 숫자, _ , - 기호만 사용 가능합니다."); System.out.println("-----------------------------------------------------------"); } } while(true) { System.out.print("비밀번호를 입력하세요? "); String password = (sc.next()); if(password.matches("^[a-zA-Z0-9~!@#$%^&*()_+-=]{6,}+$")) { vo.setPassword(password); break; } else { System.out.println("비밀번호는 6자리 이상의 영(대/소)문자와 숫자 그리고 지정된 특수기호만 사용 가능합니다."); System.out.println("-------------------------------------------------------------------"); } } while(true) { System.out.print("이름을 입력하세요? "); String name = (sc.next()); if(name.matches("^[a-zA-Z가-힣]+")) { vo.setName(name); break; } else { System.out.println("이름은 영(대/소)문자와 한글만 사용 가능합니다."); System.out.println("-------------------------------------"); } } while(true) { System.out.print("나이를 입력하세요? "); String age = (sc.next()); if(age.matches("^[0-9]+")) { vo.setAge(age); break; } else { System.out.println("나이에는 숫자만 입력가능합니다."); System.out.println("------------------------"); } } while(true) { System.out.print("전화번호를 입력하세요? "); String phonenumber = (sc.next()); if(phonenumber.matches("^[0-9]{2,3}-[0-9]{3,4}-[0-9]{4}$")) { vo.setPhonenumber(phonenumber); break; } else { System.out.println("전화번호에는 숫자만 입력가능합니다."); System.out.println("---------------------------"); } } while(true) { System.out.print("이메일주소를 입력하세요? "); String email = (sc.next()); if(email.matches("^[a-zA-Z0-9_-]{3,12}@[a-zA-Z0-9]{1,7}+\\.[a-z]+$")) { vo.setEmail(email); break; } else { System.out.println("잘못된 이메일주소 형식입니다."); System.out.println("-----------------------"); } } while(true) { System.out.print("주민번호를 입력하세요? "); String jumin = (sc.next()); if(jumin.matches("^[0-9]{6}-[1-4]{1}[1-9]{6}$")) { vo.setJumin(jumin); break; } else { System.out.println("주민번호에는 숫자만 입력 가능합니다."); System.out.println("----------------------------"); } } System.out.println(); service.membership(vo); break; } sc.close(); } } | cs |
실행화면1 (회원가입 성공)
실행화면2 (유효성검사 확인)
첫댓글 잘 보았습니다.
서비스 객체도 조금씩 사용하는 폭을 늘이시면 될것 같네요. 수고하셨습니다.