기본 프로그램 내장형식

     

     

    프로그램 구성

    사원관리 
      1. 로그인 기능 
      
      로그인하면 사원목록 
      사원등록 
      사원수정 
      사원삭제 
      종료 
      collection로 이용 ArrayList 
      
      2. 로그인못하면 종료(다시시작해야지 가능하게) 
      
      3. 실행형파일 exe로 만들기 
      4. 팀프로젝트후 setup 만들기

    EmpMain

    import java.util.Iterator;
    import java.util.Scanner;
    import java.util.Set;
    
    import emp.EmpDataSet;
    import emp.EmpVO;
    import emp.Login;
    
    public class EmpMain {
    	Scanner scan = new Scanner(System.in);
    	
    	public EmpMain() {
    		
    	}
    	
    	public void start() {
    		//아이디와 비밀번호를 입력받아 로그인 구현하기
    		Login.id = conInput("아이디");
    		Login.pwd = conInput("비밀번호");
    		if (Login.LoginCheck()) { //로그인시
    			EmpDataSet.setEmpList();
    			
    			do {
    				String menu = conInput("메뉴[1. 사원전체목록, 2.사원등록, 3.사원수정, 4.사원삭제, 5.종료]");
    				if(menu.equals("5")) {//종료
    					break;
    				}else if(menu.equals("1")){//사원전체목록
    					empOutput();
    				}else if(menu.equals("2")) {//사원등록
    					empInsert();
    				}else if(menu.equals("3")) {//사원수정
    					empEdit();
    				}else if(menu.equals("4")) {//사원삭제
    					empDel();
    				}
    				empOutput();
    			}while(true);
    			
    		}else { //로그인 실패시 
    			System.out.println("로그인이 실패하였습니다.");
    		}
    	}
    	
    	//사원전체목록 출력
    	public void empOutput() {
    		Set<String> keyList = EmpDataSet.empList.keySet();
    		Iterator<String> ii = keyList.iterator();
    		while(ii.hasNext()) {
    			EmpVO vo = EmpDataSet.empList.get(ii.next());
    			System.out.printf("%d\t%s\t%s\t%s\t%s\n", vo.getEmpNo(), vo.getEmpName(), vo.getTel(), vo.getDepart(), vo.getPosition());
    		}
    	}
    	
    	//사원등록
    	public void empInsert() {
    		int no = Integer.parseInt(conInput("사원번호")); //사원번호입력할때 이름넣으면 오류뜸
    		String name = conInput("사원명");
    		String tel = conInput("연락처");
    		String depart = conInput("부서명");
    		String position = conInput("직급");
    		
    		EmpDataSet.empList.put(name, new EmpVO(no, name, tel, depart ,position));
    	}
    	
    	//사원수정
    	public void empEdit() {
    		//사원명
    		String empName = conInput("수정할 사원명");
    		
    		//연락처, 부서명, 직급
    		// 해당사원의 정보가 없을때
    		EmpVO vo = EmpDataSet.empList.get(empName);
    		if(vo==null) {
    			System.out.println("존재하지 않는 사원명입니다.");
    		}else {//해당 사원의 정보가 있을때
    			//연락처 부서명 직급
    			String subMenu = conInput("수정할 필드 선택[1.연락처, 2.부서명, 3.직급]");
    			if(subMenu.equals("1")) {
    				String tel = conInput("수정할 연락처");
    				vo.setTel(tel);
    			}else if(subMenu.equals("2")) {
    				String depart = conInput("수정할 부서명");
    				vo.setDepart(depart);
    			}else if(subMenu.equals("3")) {
    				String position = conInput("수정할 직급명");
    				vo.setPosition(position);
    			}
    		}
    	}
    	
    	//사원삭제
    	public void empDel() {
    		String empName = conInput("삭제할 사원명");
    		EmpDataSet.empList.remove(empName);
    	}
    	//콘솔에서 문자입력받아 리턴하는 메소드
    	public String conInput(String msg) {
    		System.out.print(msg + "=");
    		return scan.nextLine();
    	}
    
    	public static void main(String[] args) {
    		new EmpMain().start();
    		System.out.println("시스템이 종료되었습니다.");
    	}
    
    }
    

     

    EmpDateSet

    package emp;
    
    import java.util.HashMap;
    
    public class EmpDataSet {
    
    	public static HashMap<String, EmpVO> empList = new HashMap<String, EmpVO>();
    	public EmpDataSet() {
    		
    	}
    	public static void setEmpList() {
    		empList.put("홍길동", new EmpVO(1, "홍길동", "02-1234-5678", "총무부", "과장"));
    		empList.put("강감찬", new EmpVO(2, "강감찬", "02-2332-4444", "기획부", "대표"));
    		empList.put("유승룡", new EmpVO(3, "유승룡", "02-3333-1111", "행정부", "사원"));
    		empList.put("이순신", new EmpVO(4, "이순신", "02-5555-4444", "사법부", "부장"));
    		empList.put("장영실", new EmpVO(5, "장영실", "02-8764-3221", "인사부", "인턴"));
    	}
    
    }
    

     

    EmpVO

    package emp;
    
    public class EmpVO {
    	
    	private int empNo;
    	private String empName;
    	private String tel;
    	private String depart;
    	private String position;
    	
    	public int getEmpNo() {
    		return empNo;
    	}
    
    	public void setEmpNo(int empNo) {
    		this.empNo = empNo;
    	}
    
    	public String getEmpName() {
    		return empName;
    	}
    
    	public void setEmpName(String empName) {
    		this.empName = empName;
    	}
    
    	public String getTel() {
    		return tel;
    	}
    
    	public void setTel(String tel) {
    		this.tel = tel;
    	}
    
    	public String getDepart() {
    		return depart;
    	}
    
    	public void setDepart(String depart) {
    		this.depart = depart;
    	}
    
    	public String getPosition() {
    		return position;
    	}
    
    	public void setPosition(String position) {
    		this.position = position;
    	}
    
    	public EmpVO() {
    		
    	}
    	public EmpVO(int empNo, String empName, String tel, String depart, String position) {
    		this.empNo=empNo;
    		this.empName= empName;
    		this.tel = tel;
    		this.depart = depart;
    		this.position = position;
    	}
    
    }
    

     

     

    Login

    package emp;
    
    public class Login {
    	
    	public static String id;
    	public static String pwd;
    	
    	public Login() {}
    	
    	//로그인 체크하는 메소드(true:성공, false:실패)
    	public static boolean LoginCheck() {
    		if (id == "" || pwd == "") {
    			System.out.println("아이디와 비밀번호를 입력후 로그인하세요.");
    			System.out.println("id ====" + id + "  password====" + pwd);
    			return false;
    		} else {
    			if(id.equals("master") && pwd.equals("1234")) {
    				return true;
    			}else {
    				System.out.println("id ====" + id + "  password====" + pwd);
    				return false;
    			}
    		}
    	}
    }
    

     

     

    실행결과

     

     

    아직 잡오류들이있음 try catch구문으로 잡으면 완성

    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기