# 프로젝트 코딩 가이드라인 (Java Backend) AI 에디터(Agent)는 다음 규칙을 항상 준수하여 코드를 작성하고 수정해야 합니다. ## 0. 기본 소통 규칙 (Communication) - **언어**: 사용자에 대한 모든 답변과 코드 설명은 항상 **한글(Korean)**로만 작성해야 합니다. ## 1. 패키지 구성 (Package Structure) - **컨트롤러 (Controller)**: `ctrl` - **서비스 (Service)**: `svc` - **DTO (Data Transfer Object)**: `dto` - **매퍼 (Mapper)**: `mapper` ## 2. 파일 명명 규칙 및 구성 (File Naming Conventions) - **컨트롤러 (Controller)**: `[도메인명]Controller.java` (예: `ABCDController.java`) - **서비스 (Service)**: `[도메인명]Service.java` (인터페이스와 구현체(impl)를 분리하지 않고 Service 클래스 파일 하나로만 구현, 예: `ABCDService.java`) - **DTO**: `[도메인명]DTO.java` (예: `ABCDDTO.java`) - **매퍼 (Mapper)**: `[도메인명]Mapper.java` (예: `ABCDMapper.java`) ## 3. URL 및 메소드 명명 규칙 (RequestMapping & Method Naming) ### 1) RequestMapping (URL) 및 컨트롤러 메소드명 - 페이지 이동하는 url : `moveXXXX.do` - 팝업 오픈하는 url : `openXXXX.do` - 조회 url : `getXXXX.do` - 저장 url : `putXXXX.do` - 수정 url : `modXXXX.do` - 삭제 url : `delXXXX.do` - **단, 컨트롤러 메소드명은 위 url에서 `.do`를 제외한 이름과 동일하게 명명합니다.** ### 2) 서비스 메소드명 - 단일조회 : `selectXXXX` - 리스트조회 : `selectListXXXX` - insert : `insertXXXX` - update : `updateXXXX` - delete : `deleteXXXX`