CRUD 코드 생성
generate_egovframe_crudGenerates eGovFrame CRUD skeletons (VO, Mapper XML, Service, Controller, optional JSP and JUnit tests) for classic XML or Boot REST projects, checking file conflicts before writing.
Instructions
eGovFrame Development의 공식 CRUD wizard 입력 체계에 맞춰 VO·Mapper(XML)·Service·Controller·JSP(선택)·JUnit 5 테스트(선택) 골격을 생성합니다. Classic XML과 Boot REST 프로필을 지원하며, 전체 파일 충돌을 먼저 검사해 하나라도 존재하면 아무것도 쓰지 않습니다. v1.4: ddl 에 CREATE TABLE 문을 주면 컬럼·타입·기본키·NOT NULL·자동 증가·COMMENT 를 읽어 필드를 만들고(COMMENT·DEFAULT 안의 콤마·괄호·'primary key' 문구에 속지 않음), search 로 방언 중립 LIKE() 검색과 이스케이프된 검색 필드를 더합니다. v1.8: paging 으로 방언별 목록 페이징(LIMIT/OFFSET 또는 공통컴포넌트와 같은 ROWNUM 감싸기), classic 화면의 PaginationInfo·ui:pagination, boot REST 의 page·size 응답을 더합니다(방언은 dialect 또는 Globals.DbType).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ddl | No | v1.4: CREATE TABLE 문. 컬럼·타입·PRIMARY KEY·NOT NULL·자동 증가(AUTO_INCREMENT·IDENTITY·SERIAL)·COMMENT(또는 COMMENT ON COLUMN)를 읽어 fields 를 만듭니다. COMMENT·DEFAULT 안의 콤마·괄호와 'primary key' 문구에 속지 않습니다. fields 와 함께 줄 수 없음 | |
| author | No | 공식 wizard의 author | egovframe-scaffold-mcp |
| dryRun | No | true면 파일을 쓰지 않고 생성 계획만 반환 | |
| fields | No | 테이블 컬럼 정의(ddl 과 둘 중 하나) | |
| paging | No | v1.8: 목록 페이징 — 방언별 SQL(MySQL·MariaDB·PostgreSQL·HSQL 은 LIMIT/OFFSET, Oracle·Tibero·Altibase·CUBRID 는 공통컴포넌트와 같은 ROWNUM 감싸기), classic 은 PaginationInfo·<ui:pagination>, boot 는 page·size 와 {content, totalCount, page, size} 응답. 방언은 dialect, 없으면 프로젝트의 Globals.DbType, 그것도 없으면 설정 파일의 JDBC URL(한 방언일 때) | |
| search | No | v1.4: 목록 검색 대상 컬럼(문자열 타입). Mapper 에 방언 중립 LIKE(<bind>)와 searchCondition 분기, classic 화면에 검색 조건·이스케이프된 hidden 필드 | |
| dialect | No | v1.4: ddl 의 DB 방언(oracle·tibero 면 DATE 를 날짜+시각 LocalDateTime 으로). v1.8: paging 의 SQL 방식도 이것으로 정함 | |
| profile | No | classic=Spring MVC+JSP, boot=REST Controller | classic |
| checkWeb | No | 공식 wizard Web 그룹 생성 여부 | |
| pageSize | No | v1.8: paging 의 페이지 목록 크기(기본 10) | |
| pageUnit | No | v1.8: paging 의 한 페이지 행 수(기본 10) | |
| withTest | No | JUnit 5 서비스 계약 테스트 골격 생성 | |
| jspFolder | No | 프로젝트 기준 JSP 폴더 | |
| tableName | No | CRUD 대상 테이블명. 단일 SQL 식별자, 예: SAMPLE_BOARD. ddl 을 주면 생략 가능(주면 DDL 의 테이블명과 같아야 함) | |
| voPackage | No | VO 패키지 | |
| createDate | No | 공식 wizard의 createDate. 미지정 시 오늘 날짜 | |
| entityName | No | 생성 클래스명. 미지정 시 tableName에서 PascalCase로 생성 | |
| includeJsp | No | classic 프로필의 JSP 2종 생성 여부(기본 true) | |
| projectDir | Yes | 대상 프로젝트 디렉터리(절대경로 권장, pom.xml 또는 build.gradle 필요) | |
| basePackage | Yes | 기본 자바 패키지. 예: egovframework.example.board | |
| implPackage | No | ServiceImpl 패키지 | |
| checkService | No | 공식 wizard Service 그룹 생성 여부 | |
| mapperFolder | No | 프로젝트 기준 Mapper XML 폴더 | |
| mapperPackage | No | Mapper 인터페이스 패키지 | |
| servicePackage | No | Service 패키지 | |
| checkDataAccess | No | 공식 wizard DataAccess 그룹 생성 여부 | |
| controllerPackage | No | Controller 패키지 |