목록AOP (3)
송민준의 개발노트
보호되어 있는 글입니다.
우선 쓰레드가 뭔지 알아야함. 간략하게 정리하자면 프로세스가 운영체제로부터 할당 받는 작업 단위인데 쓰레드는 하나의 프로세스가 할당 받는 자원을 이용하는 작업 단위임. ThreadLocal 글자 그대로 쓰레드의 지역변수임. 오직 한 쓰레드에 의해 읽고 쓰여질 수 있는 변수를 생성할 수 있도록 함. - 목적 : 쓰레드라는 scope 내에서 공유되어 사용될 수 있는 값으로 다른 쓰레드에서 공유변수를 접근할 시 발생할 수 있는 동시성 문제의 예방을 위해 만들어졌다. - 특징 1) ThreadLocal은 변수 타입을 다루기 쉽도록 제너릭으로 생성 가능함 2) 값을 세팅한 Thread만 접근할 수 있음. 모든 Thread가 사용할 수 있는 쓰레드로컬 초기값은 없지만 initialValue() 메소드를 오버라이딩 ..
어떻게 나누어지는가? Exception은 Checked Exception과 Unchecked Exception으로 구분이 되는데 Unchecked Exception은 runtime Exception을 상속하기 때문에 별다른 처리를 안해줘도 롤백이 되고 Checked Exception은 상속하지 않기 때문에 rollback이 안된다. 예를 들어 SQLException이나 IOException인 경우 Checked Exception에 해당되고 Exception 처리를 안해주면 Rollback이 안된다. 해서 Checked Exception은 명시적으로 처리를 해줘야하기 때문에 throws나 try catch로 처리를 해줘야 하고 반면 Unchecked Exception은 묵시적으로 된다. 왜 Checked ..