항공영상 관리 기능은 2D 지도 항공사진 도구에서 사용할 항공영상 레이어 기준정보를 등록, 조회, 수정, 삭제하기 위해 사용한다. 항공영상명, 서비스 prefix, 서비스명, 매트릭스명, 확장자, 그룹/분류 코드, 축척, 외부공개여부를 관리한다.
| Action URL | Controller method | QueryID |
|---|---|---|
조회 /gis/flight/flightList.do |
FlightPageController.flightList |
selectFlightList, selectFlightCount |
조회 /api/v1/flight/list |
FlightApiController.getFlightList |
selectFlightList, selectFlightCount |
등록화면 /gis/flight/flightRegist.do |
FlightPageController.flightRegist |
N/A |
목록선택 /gis/flight/flightDetail.do?flightPhotoLyrId={flightPhotoLyrId} |
FlightPageController.flightDetail |
selectFlightDetail |
항공영상 목록은 페이징 조회되며 검색조건은 항공영상명, 서비스명, 설명에 대해 수행된다.

조회 : 검색조건을 입력한 뒤 조회 버튼을 클릭하여 항공영상 목록을 조회한다.
등록 : 등록 버튼을 클릭하여 항공영상 등록 화면으로 이동한다.
상세 : 목록의 상세 버튼을 클릭하여 항공영상 상세조회 화면으로 이동한다.
수정 : 목록의 수정 버튼을 클릭하여 항공영상 수정 화면으로 이동한다.
삭제 : 목록의 삭제 버튼을 클릭하여 항공영상 삭제를 수행한다.
| Action URL | Controller method | QueryID |
|---|---|---|
상세조회 /gis/flight/flightDetail.do?flightPhotoLyrId={flightPhotoLyrId} |
FlightPageController.flightDetail |
selectFlightDetail |
상세조회 /api/v1/flight/{flightPhotoLyrId} |
FlightApiController.getFlight |
selectFlightDetail |
수정화면 /gis/flight/flightModify.do?flightPhotoLyrId={flightPhotoLyrId} |
FlightPageController.flightModify |
selectFlightDetail |
항공영상 상세조회 화면은 항공영상 레이어 ID 기준 단건 정보를 조회하며 서비스명, 매트릭스명, 확장자, 분류와 공개 여부를 확인할 수 있다.

목록 : 항공영상 목록조회 화면으로 이동한다.
수정 : 수정 버튼 클릭 시 항공영상 수정 화면으로 이동한다.
삭제 : 삭제 버튼 클릭 시 삭제 여부를 확인한 뒤 삭제 처리한다.
| Action URL | Controller method | QueryID |
|---|---|---|
등록화면 /gis/flight/flightRegist.do |
FlightPageController.flightRegist |
N/A |
중복확인 /api/v1/flight/check-duplicate |
FlightApiController.checkDuplicateFlight |
countDuplicateFlight |
저장 /api/v1/flight |
FlightApiController.createFlight |
insertFlight |
항공영상 등록 화면에서는 항공영상명, 설명, 서비스 prefix, 서비스명, 매트릭스명, 확장자, 그룹/분류 코드, 축척, 외부공개여부를 입력해 저장한다.
false로 보정한다.
목록 : 항공영상 목록조회 화면으로 이동한다.
저장 : 입력한 항공영상 정보를 저장 처리한다.
| Action URL | Controller method | QueryID |
|---|---|---|
수정화면 /gis/flight/flightModify.do?flightPhotoLyrId={flightPhotoLyrId} |
FlightPageController.flightModify |
selectFlightDetail |
중복확인 /api/v1/flight/check-duplicate?excludeId={flightPhotoLyrId} |
FlightApiController.checkDuplicateFlight |
countDuplicateFlight |
수정 /api/v1/flight/{flightPhotoLyrId} |
FlightApiController.updateFlight |
selectFlightDetail, updateFlight |
항공영상 수정 화면에서는 기존 항공영상 정보를 조회한 뒤 수정 저장한다. 항공영상 레이어 ID는 URL의 flightPhotoLyrId 기준으로 고정된다.
excludeId를 사용하면 현재 수정 대상은 중복 비교에서 제외한다.
목록 : 항공영상 목록조회 화면으로 이동한다.
저장 : 수정한 항공영상 정보를 저장 처리한다.
| Action URL | Controller method | QueryID |
|---|---|---|
삭제 /api/v1/flight/{flightPhotoLyrId} |
FlightApiController.deleteFlight |
selectFlightDetail, deleteFlight |
항공영상 삭제는 목록조회 화면 또는 상세조회 화면에서 수행할 수 있다. 삭제 전 존재 여부를 확인하며 별도 연관 데이터 검사는 수행하지 않는다.
선택 : 목록 화면의 삭제 버튼 또는 상세 화면의 삭제 버튼을 선택한다.
삭제 : 삭제 확인 후 항공영상 정보를 삭제 처리한다.
항공영상 관리 CRUD는 afgis.flight_photo_lyr를 사용한다. 반면 지도 공통 조회 API인 LayerApiController.getFlightPhotoLayerList는 LayerMapper.xml의 항공영상 조회 쿼리를 사용하므로 사업 적용 시 관리 CRUD 테이블과 지도 조회 테이블 참조가 같은 스키마를 바라보는지 확인해야 한다.
| 유형 | 대상소스명 | 비고 |
|---|---|---|
| Controller | src/main/java/allforland/gis/flight/web/FlightPageController.java |
항공영상 관리 화면 요청을 처리하는 컨트롤러 클래스 |
| API Controller | src/main/java/allforland/gis/flight/web/FlightApiController.java |
항공영상 관리 API 요청을 처리하는 컨트롤러 클래스 |
| Service | src/main/java/allforland/gis/flight/service/FlightService.java |
항공영상 관리를 위한 서비스 인터페이스 |
| ServiceImpl | src/main/java/allforland/gis/flight/service/impl/FlightServiceImpl.java |
항공영상 관리를 위한 서비스 구현 클래스 |
| Mapper | src/main/java/allforland/gis/flight/mapper/FlightMapper.java |
항공영상 관리를 위한 데이터 처리 Mapper 인터페이스 |
| VO | src/main/java/allforland/gis/flight/vo/FlightVO.java |
항공영상 정보를 담는 VO 클래스 |
| Search VO | src/main/java/allforland/gis/flight/vo/FlightSearchVO.java |
항공영상 목록 검색 조건 VO 클래스 |
| DTO | src/main/java/allforland/gis/flight/web/dto/FlightRequestDTO.java |
항공영상 등록/수정 요청 DTO 클래스 |
| JSP | src/main/webapp/WEB-INF/jsp/gis/flight/flightList.jsp |
항공영상 목록조회를 위한 JSP 페이지 |
| JSP | src/main/webapp/WEB-INF/jsp/gis/flight/flightDetail.jsp |
항공영상 상세조회를 위한 JSP 페이지 |
| JSP | src/main/webapp/WEB-INF/jsp/gis/flight/flightRegist.jsp |
항공영상 등록을 위한 JSP 페이지 |
| JSP | src/main/webapp/WEB-INF/jsp/gis/flight/flightModify.jsp |
항공영상 수정을 위한 JSP 페이지 |
| Query XML | src/main/resources/mapper/flight/FlightMapper.xml |
항공영상 조회/등록/수정/삭제를 위한 Query XML |
| SQL | docker/postgres/init/03-gis-schema.sql |
항공영상 테이블 생성을 위한 스키마 SQL |
| SQL | docker/postgres/init/04-gis-data.sql |
항공영상 기본데이터 적재 SQL |

| 테이블명 | 테이블명(영문) | 비고 |
|---|---|---|
| 항공영상 레이어 | afgis.flight_photo_lyr |
항공영상 레이어 서비스명, 매트릭스명, 확장자, 공개여부를 관리하는 테이블 |