💬 Copilot을 이용하여 댓글 CRUD 구현함.
GPT에게 Copilot에 넣을 프롬프트를 요청함.
요청 내용은 “댓글(Comment)에 대한 CRUD API를 만들기 위한 프롬프트 생성”이었음.
아래는 GPT가 만들어준 프롬프트 원문임.
게시판 또는 프로젝트 관리 시스템에서 댓글(Comment)을 생성, 조회, 수정, 삭제할 수 있는 CRUD REST API를 만들어줘.
요구사항은 다음과 같음:
1️⃣ 각 댓글(Comment)은 다음 필드를 가짐.
- id (UUID)
- task_id (UUID, tb_task의 FK)
- author_id (UUID, tb_user의 FK)
- content (text)
- created_at (timestamp)
- updated_at (timestamp)
2️⃣ Spring Boot(Java)로 Controller, Service, Repository 계층 구조를 사용해 작성할 것.
3️⃣ 아래의 API 엔드포인트를 포함할 것:
- POST /api/comments (댓글 생성)
- GET /api/comments?task_id=... (특정 업무의 댓글 목록 조회)
- PATCH /api/comments/{id} (댓글 수정)
- DELETE /api/comments/{id} (댓글 삭제)
4️⃣ 입력 검증(Validation)을 적용할 것.
- content는 비어 있을 수 없음.
- task_id, author_id는 필수임.
5️⃣ 응답은 ApiResponse(success, message, data) 형태로 반환할 것.
6️⃣ RESTful 네이밍 규칙과 HTTP 상태코드를 준수할 것.
이 프롬프트를 Copilot에 그대로 입력함.
Copilot이 자동으로 CommentController, CommentService, CommentRepository, DTO 구조를 생성함.
전체적인 구조는 아래와 같음.
src/
├─ controller/
│ └─ CommentController.java
├─ service/
│ └─ CommentService.java
├─ repository/
│ └─ CommentRepository.java
├─ dto/
│ ├─ CommentCreateRequest.java
│ ├─ CommentUpdateRequest.java
│ └─ CommentResponse.java
├─ common/
│ └─ ApiResponse.java
└─ config/
└─ SwaggerConfig.java
📘 API 명세서
| 기능 | 메서드 | 엔드포인트 | 설명 |
|---|---|---|---|
| 댓글 생성 | POST | /api/comments | 새로운 댓글 등록 |
| 댓글 목록 조회 | GET | /api/comments?task_id=... | 특정 업무의 댓글 리스트 조회 |
| 댓글 수정 | PATCH | /api/comments/{id} | 댓글 내용 수정 |
| 댓글 삭제 | DELETE | /api/comments/{id} | 댓글 삭제 |
🧩 결과물 기록
이후에 Copilot이 생성한 실제 코드와 Swagger 문서 캡처를 아래에 추가할 예정임.
오늘의 포인트는 GPT를 통해 프롬프트를 설계하고 Copilot으로 CRUD 구조를 자동 생성한 것임.
'work' 카테고리의 다른 글
| 팀 멤버 추가 api 구현 (gpt, copilot) (0) | 2025.10.27 |
|---|---|
| 프론트 페이지 리팩토링 (0) | 2025.10.27 |
| 백엔드(copilot) 을 사용한 후 프론트엔드 (cusor) 로 연결 (0) | 2025.10.20 |
| 전자정부 프레임워크 4.3.0과 copilot 같이 쓰기 (0) | 2025.10.16 |
| 주간보고 페이지 수정 (0) | 2025.10.14 |