본 장에서는 사용자의 Eclipse 프로젝트에 Anyframe Query Manager의 Nature를 적용하여 유용한 정보를 얻는 방법에 대하여 알아본다.
프로젝트 네이쳐(Nature)는 플러그인이 해당 프로젝트를 특별한 종류의 프로젝트로 간주하게 한다. Anyframe Core의 Query Service를 활용하는 프로젝트는 Anyframe Query Manager의 Nature를 설정함으로써, 해당 프로젝트에 대해 유용한 기능을 제공할 수 있게 한다.
Anyframe Query Manager Nature를 설정하는 주된 목적은 Anyframe Query Manager가 제공하는 Anyframe Builder의 기능을 해당 프로젝트(Java Project)에서 사용하게 하는 것이다.
Anyframe Query Manager Nature를 특정 Java 프로젝트에 적용하기 위해서는 해당 프로젝트의 Context Menu에서 "Anyframe Query Manager > Add Anyframe Query Manager Nature"를 선택한다. Anyframe Query Manager Nature가 활성화되어 적용되면, "Anyframe Builder"의 기능이 해당 프로젝트에 적용된다. 이미 적용한 Anyframe Query Manager Nature를 해제하기 위해서는 Context Menu에서 "Anyframe Query Manager > Remove Anyframe Query Manager Nature"를 선택한다.

Anyframe Builder는 Eclipse 프로젝트 안의 중복된 Query ID 를 찾아내며, 중복된 Query ID가 있을 경우에는 붉은색 오류(Error) 표식을 Query Manager Editor 의 해당 Query문 부분에 표시하며, Eclipse의 Problems View에 해당 오류를 출력하게 한다.
또한, 특정 Query가 어떠한 DAO에서도 활용되지 않았을 경우에는 노란색 경고(Warning) 표식을 마찬가지 방법으로 Query Manager Editor 및 Problems View에 표시한다.
Anyframe Query Manager Nature 가 해당 프로젝트에 대하여 적용(활성화; "Context Menu: Anyframe Query Manager > Add Anyframe Query Manager Nature")되었을 경우, 다음과 같은 조건을 만족할 때 Anyframe Builder의 작업이 수행된다.
프로젝트 내의 리소스 추가 이벤트가 발생하였을 때
프로젝트 내의 리소스 변경 이벤트가 발생하였을 때
프로젝트 내의 리소스 삭제 이벤트가 발생하였을 때
프로젝트 내부 혹은 외부로부터 특정 리소스를 Copy and Paste 하였을 때
위의 모든 경우에 대하여 "리소스"는 Query 맵핑 XML 파일을 의미하며, 표시된 오류나 경고에 대해서는 사용자가 직접 문제점을 해결하기 전까지는 해당 표식은 사라지지 않는다.
Anyframe Builder에 의해서 제공되는 중복 Query ID 표시는 사용자에게 Query ID에 대한 현상황을 효과적으로 표시해 준다. 다음 화면은 각각 Anyframe Query Manager Nature의 적용 전후를 나타내며, 이를 통해 중복된 Query ID에 대하여 오류 표식의 유무가 달라짐을 알 수 있다.

Anyframe Core의 Query Service를 활용하는 DAO 파일이 존재하지 않는 Query ID를 참조할 때, 해당 DAO 파일의 Query ID 위치에 붉은색 오류(Error) 표식이 표시된다.
Anyframe Query Manager의 Anyframe Builder 는 Query 맵핑 XML 파일의 변경사항을 추적하기 때문에, 유효하지 않은 Query ID를 참조하고자할 때에는 오류 표식이 나타나게 되며, 이를 통해 사용자는 다음과 같은 이점을 얻을 수 있다.
Anyframe Core의 Query Service를 활용하는 DAO에서 참조하는 Query ID가 모두 존재하는 것을 확인할 수 있다.
유효하지 않은 Query ID로 인해 발생하는 Run-Time 오류를 사전에 방지할 수 있다.
DAO에서 활용하는 특정 Query ID의 Query문으로 바로 이동하거나, Query 맵핑 XML 파일에서 정의한 Query ID에서 활용하는 특정 VO를 열기 위해서는 "Context Menu에서 파일 열기" 를 참고한다.