DB - 회원관리 프로그램 View 부분 상세설명(2022-08-09)

2022. 8. 9. 13:343층 1구역 - 개발의 장/Oracle DataBase

해당 전체코드는 요기!!!

 

2022.08.09 - [개발일지/부트캠프(데이터베이스 Part)] - DB - DB연동을 통한 회원관리 프로그램 구축 하는 퀴즈(2022-08-09)

 

DB - DB연동을 통한 회원관리 프로그램 구축 하는 퀴즈(2022-08-09)

인터페이스 - IDAO.java package jdbc_concept5.DAO; import java.util.ArrayList; import jdbc_concept5.DTO.MemberDTO; public interface IDAO { public MemberDTO selectId(String id); public int insertMembe..

sukw9512.tistory.com

 

 

MemberView.java - mainMenu 부분

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

	@Override
	public void mainMenu() {
		while(true) {
			System.out.println("1. 회원 전체 정보 출력");
			System.out.println("2. 회원 정보 조회");
			System.out.println("3. 회원 정보 입력");
			System.out.println("4. 회원 정보 변경");
			System.out.println("5. 회원 정보 삭제");
			System.out.println("0. 프로그램 종료");
			System.out.print("선택 > ");
			int select;
			try {
				select = Integer.parseInt(in.next());
			} catch (Exception e) {
				continue;
			}
			switch (select) {
			case 0 :
				disconnection();
				System.out.println("프로그램을 종료합니다.");
				System.exit(0);
			case 1 : 
				selectAll();
				break;
			case 2 :
				selectId();
				break;
			case 3 :
				insertMember();
				break;
			case 4 :
				updateMember();
				break;
			case 5 :
				deleteMember();
				break;
			default:
				System.out.println("메뉴 확인 후 다시 입력하세요.");
			}
		}
		
	}
    }

MemberView.java - 프로그램 종료시 DB연결 끊기 부분

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

private static void disconnection() {
		memberDao.disconnection();
	}
    }

MemberView.java - selectAll(모든 정보 조회) 부분

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

@Override
	public void selectAll() {
		ArrayList<MemberDTO> members = memberDao.selectAll();
		//MemberDTO에 값이 없는 게 참이면
		if(members.isEmpty() == true) {
			//아래 문장을 출력
			System.out.println("등록 후 이용해주시길 바랍니다.");
			//그게 아니면
		}else {
			//향상 for문을 사용하여 members의 값을 MemberDTO의 변수에 대입.
			for(MemberDTO m : members) {
				//MemberDTO의 변수의 값을 가져와 출력.
				System.out.println("번호 : " + m.getNum());
				System.out.println("아이디 : " + m.getId());
				System.out.println("패스워드 : " + m.getPw());
				System.out.println("이름 : " + m.getName());
				System.out.println("이메일 : " + m.getEmail());
				System.out.println();
			}
		}
		
	}
    }

MemberView.java - selectId(id관련 정보 조회) 부분

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

//1번
	@Override
	public void selectId() {
		System.out.println("=== 회원 정보 조회 ===");
		System.out.print("아이디 : ");
		String id = in.next();
		//1. 없는 값은 null로 설정했을 경우
		MemberDTO member = memberDao.selectId(id);
		if(member == null) {
			System.out.println(id + "는/은 등록된 정보가 없습니다.");
		}else {
			System.out.println("번호 : " + member.getNum());
			System.out.println("아이디 : " + member.getId());
			System.out.println("패스워드 : " + member.getPw());
			System.out.println("이름 : " + member.getName());
			System.out.println("이메일 : " + member.getEmail());
		}
		System.out.println();
		
		//2. 따로 중복 관련해서 만들었을 경우
		/*int count = memberDao.isExists(id);
		if(count == 0) {
			System.out.println(id + "는/은 등록된 정보가 없습니다.");
		} else {
			MemberDTO selectData = memberDao.selectId(id);
			System.out.println("번호 : " + selectData.getNum());
			System.out.println("아이디 : " + selectData.getId());
			System.out.println("패스워드 : " + selectData.getPw());
			System.out.println("이름 : " + selectData.getName());
			System.out.println("이메일 : " + selectData.getEmail());
		}
		System.out.println();*/
		
	}
    }

MemberView.java - insertMember(회원 정보 등록) 부분

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

//1번 선택
	@Override
	public void insertMember() {
		System.out.print("아이디 : "); String id = in.next();
		MemberDTO member = memberDao.selectId(id);
		if(member == null) {
		System.out.print("비밀번호 : "); String pw = in.next();
		System.out.print("이름 : "); String name = in.next();
		System.out.print("이메일 : "); String email = in.next();
		
		member = new MemberDTO();
		member.setNum(memberDao.selectMaxNum());
		member.setId(id);
		member.setPw(pw);
		member.setName(name);
		member.setEmail(email);
		
		memberDao.insertMember(member);
		}else {
			System.out.println(id + "는/은 이미 등록된 아이디입니다.");
		}
		
		//2번 선택
		/*System.out.println("=== 회원 정보 입력 ===");
		System.out.print("아이디 : "); 
		member.setId(in.next());
		
		int count = memberDao.isExists(member.getId());
		if(count == 0) {
		System.out.print("번호 : "); member.setNum(in.nextInt());
		System.out.print("패스워드 : "); member.setPw(in.next());
		System.out.print("이름 : "); member.setName(in.next());
		System.out.print("이메일 : "); member.setEmail(in.next());
		memberDao.insertMember(member);
		}else
		System.out.println(member.getId() + "는/은 이미 등록된 아이디입니다.");*/
	}
    }

MemberView.java - updateMember(회원 정보 수정) 부분

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

//1번
	@Override
	public void updateMember() {
		System.out.println("=== 회원 정보 변경 ===");
		System.out.print("아이디 : ");
		String id = in.next();
		MemberDTO member = memberDao.selectId(id);
		
		if(member == null) {
			System.out.println(id + "는/은 등록된 정보가 아닙니다.");
		}else {
			System.out.print("비밀번호 : "); String pw = in.next();
			System.out.print("이름 : "); String name = in.next();
			System.out.print("이메일 : "); String email = in.next();
			
			member.setPw(pw);
			member.setName(name);
			member.setEmail(email);
			
			memberDao.updateMember(member);
		}
		
		
		//2번
		/*int count = memberDao.isExists(id);
		
		if(count == 0) {
			System.out.println(id + "는/은 등록된 정보가 아닙니다.");
			return;
		}
		
		System.out.print("패스워드 : ");
		String pw = in.next();
		System.out.print("이름 : ");
		String name = in.next();
		System.out.print("이메일 : ");
		String email = in.next();
		
		MemberDTO member = new MemberDTO();
		member.setPw(pw);
		member.setName(name);
		member.setEmail(email);
		
		memberDao.updateMember(member);
		System.out.println(id + "님의 정보가 수정되었습니다.");*/
	}
    }

MemberView.java - deleteMember(회원 정보 삭제) 부분

 

package jbbc_concept6;

import java.util.ArrayList;
import java.util.Scanner;

public class MemberView implements IView{
	private static Scanner in = new Scanner(System.in);
	//1. 평소대로 new를 선언하여 하는 방법
	private static MemberDAO memberDao = new MemberDAO();
	
	//2. 생성자 활용
	//public MemberView() {
	//	in = new Scanner(System.in);
	//	memberDao = new MemberDAO();
	// }

//1번
	@Override
	public void deleteMember() {
		System.out.println("=== 회원 정보 삭제 ===");
		System.out.print("아이디 : ");
		String id = in.next();
		MemberDTO member = memberDao.selectId(id);
		
		if(member == null) {
			System.out.println(id + "는/은 등록된 정보가 아닙니다.");
			}else {
				System.out.print("비밀번호 : "); String pw = in.next();
				if(member.getPw().equals(pw)) {
					memberDao.deleteMember(id);
					
					System.out.println(id + "님의 정보가 삭제되었습니다.");
				}else {
					System.out.println("비밀번호가 일치하지 않습니다.");
				}
			}
		
		//2번
		/*int count = memberDao.isExists(id);
		
		if(count == 0) {
			System.out.println(id + "는/은 등록된 정보가 아닙니다.");
			return;
		}
		int rowCount = memberDao.deleteMember(id);
		if(rowCount == 1)
			System.out.println(id + "님의 정보가 삭제되었습니다.");*/
		
	}
    }