본문 바로가기

전체 글

(116)
인텔리제이에서 Lombok 적용이 안된다면 해결책 기본적으로 롬복 설치 및 인텔리제이 설정까지 끝냈음에도 롬복이 적용되지 않는 문제가 발생하곤 한다. 일단 순서에 맞게 진행을 했는지 확인해보자. 1. IntelliJ 플러그인에서 Lombok 플러그인이 Installed 상태인지, 더불어 활성화된 상태인지 확인하기 2. IntelliJ 설정에서 어노테이션 프로세서 - 어노테이션 처리 활성화 체크가 되어있는지 확인하기 3. pom.xml / build.gradle 의존성 관리자에 Lombok 의존성이 추가되었는지 확인 일반적으로 1 ~ 3을 진행하면 문제없이 진행되지만, Lombok을 의존성 프로세서로 설정되지 않았다면 설치 여부와 관계없이 사용할 수 없다. 따라서 다음과 같이 진행한다. 4. Lombok을 의존성 프로세서로 설정한다. annotationP..
싱글턴은 빈 스코프의 일부일 뿐이다. 스프링을 공부하다가, Scope 라는 빈의 라이프사이클에 대한 내용을 공부했는데 상당히 흥미로운 내용을 발견했다. 실제로 프로젝트를 진행하면 포틀릿 관련된 내용을 자주 접할 수 있었다. 도대체 이게 뭐시당가 라면서 고민했지만 하던대로 코딩해도 문제가 없었으니 넘어갔던 기억이 난다. 하지만 여기서 이걸 볼 줄이야... 내용은 다음과 같다. 0. Scope 정의는 기본적으로 Bean 생성 및 소멸을 어떻게 할 것인가? 그것에 대한 정의라고 볼 수 있다. 1. 스프링에서 Bean 정의를 할 때, 특정 목적에 맞도록 Scope 정의를 할 수 있다. 2. 싱글턴, 프로토타입 같은 기본적인 정의가 존재한다. 3. 웹에서 사용하는 Request, Session 또한 Bean Scope 일부다. 4. Global Se..
에러를 대처하는 것은 불가능하다. 단지 예외만 다룰 뿐이다. 자바에서는 오류의 종류로 Error, Exception 두 가지를 제안한다. 1. Error, 에러 Error는 간단하게, 하드웨어적인 문제가 발생하여 생기는 오류를 뜻한다. 당연히 개발자가 이를 해결할 방법은 없다. 컴퓨터가 불타고 박살나는데 정상적으로 소프트웨어가 돌아가게 하는 개발자가 있다면 이미 개발이라는 영역을 벗어난 초능력임이 확실하니까. 2. Exception, 예외 개발자가 작성한 코드가 의도치 않게 작동하여 발생하는 오류를 뜻한다. 이는 개발자가 반드시 고려해야 하는 영역이다. 3. 컴파일러 컴파일러가 감지할 수 있는 예외를 Exception 이라고 부르며, 컴파일러가 감지할 수 없는 예외를 Runtime Exception 이라고 부른다. 컴파일러가 감지하느냐 마느냐의 기준은 무엇일까? ..