자바에서 어노테이션이라는 기술이 스프링 프레임워크상에서 자주 쓰이지만 이 기술에 대해 자세히 알아보지도 않고 IT에 몸담고 있는 5년간 대충 아는정도에 밖에 그치지 못하고 있다. 이러한 어노테이션에 대해 제대로 공부해 보려고 하는 이유는 스프링 프레임워크와 관련된 스프링 부트2라는 서적을 공부하면서 어노테이션이 정말 많이 나오는데 이에 대한 동작방식을 전혀 이해하지 못하고 있다는 생각이 들어서이다. 어노테이션은 사전적 의미로는 주석이라는 뜻이다. 자바에서 사용될 때의 어노테이션은 코드 사이에 주석처럼 쓰여서 특별한 의미, 기능을 수행하도록 하는 기술이다. 즉, 프로그램에게 추가적인 정보를 제공해주는 메타데이터(meta data: 데이터를 위한 데이터)라고 볼 수 있다. 다음은 어노테이션의 용도를 나타낸 ..
스프링 부트를 공부하다가 문득 @Data라는 생소한 어노테이션을 발견하게 되었다. lombok이라는 어노테이션인데 bean 형태의 객체의 소스를 상당수를 줄여줄 수 있는 어노테이션 이라고 한다. 부푼 기대감을 안고 Maven에 lombok Dependency를 추가한 다음 @Data를 적용하였지만 소스상에 아무런 변화가 없다. 음? @Data라는 어노테이션을 추가하면 자동으로 생성자 메서드 및 Getter, Setter 메서드를 정의하여 준다고 하였지만 아무런 증상이 없다. 그러다 결국 dependency 추가만으로는 lombok을 사용할 수 없다는 사실을 알게 되었고 lombok을 적용하는 방법을 블로그에 포스팅 하고자 한다. 일단, lombok.jar가 설치된 폴더를 알아낸 다음 해당 폴더로 이동한다..