본문 바로가기

분류 전체보기21

[기록] 211222 1. 예외 예외처리 : 프로그램 실행 시 발생할 수 있는 예외에 대비하는 것으로 프로그램 비정상종료를 막고 실행 상태를 유지하는 것. 에러(error) : 발생 시 수습할 수 없는 심각한 오류. (컴파일에러, 런타임에러 등) 예외(exception) : 예외 처리를 통해 수습할 수 있는 덜 심각한 오류. (예외에는 크게 Error(java.lang.Error), Exception(java.lang.Exception)과 체크예외, RuntimeException과 언체크/런타임 예외 가 있다.) 2. Checked Exception & UnChecked Exception . *간단하게 RuntimeException을 상속하지 않는 클래스는 Checked Exception, 반대로 상속한 클래스는 Unchec.. 2021. 12. 26.
실패원자성과 동시성 오류 관련 실패원자성은 권장되지만 항상 만족할 수는 없는데 그 경우 중 두 스레드가 동기화 없이 같은 객체를 동시에 수정할 때 발생하는 동시성 오류에 관하여. 여기서 의문점은 이 때 실패원자성을 만족하지 않으면 더 심각해지지 않느냐이다. 동시성 오류는 일반적으로 예외를 잡더라도 객체를 재사용하기 어렵다고 하는데.. 좀 더 정확하게 찾아보고 관련 내용 추가하도록 하겠습니다. 2021. 12. 22.
Checked Exception과 Unchecked Exception의 Rollback 관련 Checked Exception과 Unchecked Exception의 Rollback 차이점 현재 알고 있는 내용 : Checked Exception는 Rollback이 되지않고, Unchecked Exception은 Rollback이 된다. 하지만 Checked Exception과 Unchcked Exception의 Rollback이 되고 안되고의 문제는 단정지을수 없다고 한다. 2021. 12. 22.
[4장] 예외 4장에서는 JdbcTemplate을 대표로 하는 스프링의 데이터 액세스 기능에 담겨 있는 예외처리와 관련된 접근 방법에 대해 알아본다. 이를 통해 예외를 처리하는 베스트 프랙티스도 살펴본다. 1. 사라진 SQLException 3장에서 JdbcTemplate으로 바꾸고 나서 throws SQLException이 사라졌다. 먼저 개발자들의 코드에서 종종 발견되는 초난감 예외처리의 대표선수들을 살펴보자. 예외 블랙홀 try/catch 블록 중 catch로 예외를 잡고 아무것도 하지 않는 경우. 조치를 취할 방법이 없다면 굳이 예외를 잡지 말고 메소드에 throws SQLException을 선언해 자신을 호출한 코드에 예외처리 책임을 전가하자. 무의미하고 무책임한 throws 모든 메소드에 기계적으로 예외를 .. 2021. 12. 21.