[JAVA] 예외 발생 Exception 및 그 밖의 Exception 종류 및 예시

2024. 1. 10. 21:49·JAVA
  1. ClassNotFoundException 또는 NoClassDefFoundError:
    •   이유: 필요한 JDBC 드라이버 클래스를 찾을 수 없음.
    •   예시: JDBC 드라이버를 프로젝트의 클래스패스에 추가하지 않은 경우.
  2. SQLException: Communications link failure:
    •   이유: 데이터베이스 서버와의 연결이 끊겼거나 연결을 설정할 수 없음.
    •   예시: 데이터베이스 서버 주소 또는 포트가 올바르지 않거나, 네트워크 문제.
  3. SQLSyntaxErrorException: Table or view not found:
    •   이유: SQL 쿼리에서 참조하는 테이블이나 뷰가 존재하지 않음.
    •   예시: MyBatis 매퍼 XML 파일에서 잘못된 테이블 이름을 참조하는 경우.
  4. DataAccessException: Data truncation:
    •   이유: 데이터가 테이블의 컬럼 크기를 초과하거나 유효하지 않은 형식으로 입력됨.
    •   예시: 문자열이 컬럼의 최대 길이를 초과하는 경우.
  5. MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:
    •   이유: MyBatis에서의 일반적인 예외. SQL 예외의 상위 예외.
    •   예시: MyBatis가 데이터베이스와 상호 작용하면서 발생한 다양한 SQL 예외.
  6. CannotGetJdbcConnectionException: Could not get JDBC Connection:
    •   이유: 데이터베이스에 연결할 수 없음.
    •   예시: 데이터베이스 로그인 정보가 올바르지 않은 경우.
  7. org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction:
    •   이유: 트랜잭션을 시작할 수 없음.
    •   예시: 데이터베이스 연결이 올바르게 설정되지 않은 경우.
  8. NullPointerException:
    •   이유: 어떤 객체에 대한 참조가 null인 상태에서 해당 객체의 메서드나 속성에 접근하려고 할 때 발생함.
    •   예시:
      String str = null;
      int length = str.length(); // NullPointerException 발생
  9. TypeMismatchException:
    •   이유: 데이터 형식이 예상과 다를 때 발생합니다. 주로 데이터 타입 변환이나 캐스팅과 관련된 문제로 발생합니다.
    •   예시:
      Object obj = "Hello";
      Integer number = (Integer) obj; // TypeMismatchException 발생
  10. NumberFormatException:
    •   이유: 문자열을 숫자로 변환할 때, 해당 문자열이 숫자로 제대로 변환이 불가능한 경우에 발생합니다.
    •   예시:
      String str = "ABC";
      int num = Integer.parseInt(str); // NumberFormatException 발생
  11. ArrayIndexOutOfBoundsException:
    •   이유: 배열에서 존재하지 않는 인덱스에 접근하려고 할 때 발생합니다.
    •   예시:
      int[] arr = {1, 2, 3};
      int element = arr[5]; // ArrayIndexOutOfBoundsException 발생
  12. ClassCastException:
    •   이유: 클래스 간 형변환이 잘못된 경우 발생합니다.
    •   예시:
Object obj = "Hello";
Integer number = (Integer) obj; // ClassCastException 발생

 

 

저작자표시

'JAVA' 카테고리의 다른 글

[JAVA] 오버로딩(Overloading)과 오버라이드(Override)  (0) 2024.03.25
[JAVA] Class  (0) 2024.03.25
[JAVA] 자바의 자료구조  (1) 2023.11.27
[JAVA] JDK와 JRE  (0) 2023.11.16
[JAVA] pom.xml에 의존성(라이브러리) 추가 방법  (0) 2023.11.04
'JAVA' 카테고리의 다른 글
  • [JAVA] 오버로딩(Overloading)과 오버라이드(Override)
  • [JAVA] Class
  • [JAVA] 자바의 자료구조
  • [JAVA] JDK와 JRE
kwh_coding
kwh_coding
성장하는 괴물 성괴 김우형
  • kwh_coding
    코딩 일기
    kwh_coding
  • 전체
    오늘
    어제
    • 분류 전체보기
      • JAVA
      • JavaScript
        • Node
        • React
      • PYTHON
      • GitHub
      • DJANGO
      • ERP Project
      • NAVER CLOUD Web DevOps
      • 자격증
        • SQLD
        • 정보처리기사
        • ADsP
      • 코딩테스트
        • 프로그래머스 Lv0
        • 프로그래머스 Lv1
      • Spring
      • Tools
        • Postman
        • eGov
      • WEB
      • CS
  • 블로그 메뉴

    • 홈
    • GitHub
    • Notion
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    코딩테스트
    해시 암호화
    web
    RDBMS
    brycpt
    node
    js
    eGov
    코딩
    annotation
    React
    CORS
    jsp
    django
    private network
    html
    정보처리기사
    Tomcat
    spring
    git
    Postman
    github
    프로그래머스
    코테
    AdSP
    Java
    SQLD
    Python
    javascript
    gitbash
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
kwh_coding
[JAVA] 예외 발생 Exception 및 그 밖의 Exception 종류 및 예시

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.