자바(JAVA) 예외처리(Exception) Try Catch문 – 로그인 예시로 이해하기

이번에는 자바(JAVA)에 try, catch,finally를 이용해서 로그인 기능을 구현할때 발생할 수 있는 여러 상황들을 예외처리로 설정하여 본다.

먼저 try 문제서 로그인을 시도 후, 성공할 경우 성공 메세지를 출력한다.

하지만 try 했는데 login 메소드에서 예외가 발생 시, catch 문으로 넘어가 각 예외상황에 설정된 메세지를 출력한다.

그리고 로그인을 성공하든 안하든 finally를 실행한다.

package game82;

public class easy {
	public static void main(String[] args) {
	
		//로그인하기 , 예외사항이 있으므로 try,catch,finally
		
		try {
			//로그인 시도하기
			boolean loginResult = login("dalso","11112");
			//예외사항없이 true값을 받을 시에는
			if (loginResult) System.out.println("로그인 되었습니다");
		}
		catch (Exception e) {
			//예외사항이 발생한 경우
			System.out.println("Error Message");
			//예외사항 메세지를 출력
			System.out.println(e.getMessage());
		}
		finally {
			//예외사항이 발생하든 안하든 실행
			System.out.println("귀여운 달소네 집");
		}
	}
	
	//로그인 메소드
	static boolean login(String id, String password) throws Exception{
			
		
		//서버로 정보 보내기를 안배웠으므로 밑에 변수로 환경설정
		
		//여러가지 예외사항 설정 
		//false 일 경우 Pass이므로 로그인 성공
		boolean networkFailed = false;
		boolean wrongId = false;
		boolean wrongPassword = false;
		boolean passwordExpired = false;
		//true에 걸릴 경우 각각의 변수에 맞추어서 예외메세지 설정
		if(networkFailed) throw new Exception ("네트워크가 연결되지 않았습니다");
		else if(wrongId) throw new Exception ("아이디가 존재하지 않습니다");
		else if(wrongPassword) throw new Exception ("비밀번호가 잘못되었습니다");
		else if(passwordExpired) throw new Exception ("비밀번호가 만기되었습니다");
		
		//위에 모두 false여서 정보가 server에 모두 보내질 경우 true 값 반환
		return true;
		
	}
	
}

 

————————————————–

사이트 리뉴얼중입니다~

서버(Linux, ESXi), NAS(헤놀로지, ESXi 및 IT관련 정보, 기타 등등을 공유하는 커뮤니티 SVRFORUM을 새로 만들었습니다.
많은 가입(?) 부탁드립니다~
https://svrforum.com

이전글들은 모두 상단 메뉴의 Blog 글 모음에있습니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

홈서버 IT 커뮤니티 SVRFORUM
Link