분석 결과를 기반으로 Spring 전환 체크리스트 작성 (E2E-MINIMAX-DEV-001)
This commit is contained in:
parent
5816835dfb
commit
322dcfe5c3
1 changed files with 59 additions and 0 deletions
|
|
@ -0,0 +1,59 @@
|
||||||
|
package com.example.migration.controller;
|
||||||
|
|
||||||
|
import com.example.migration.dto.ApiResponse;
|
||||||
|
import com.example.migration.dto.SampleRequest;
|
||||||
|
import com.example.migration.dto.SampleResponse;
|
||||||
|
import com.example.migration.exception.ResourceNotFoundException;
|
||||||
|
import com.example.migration.service.SampleService;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 샘플 REST 컨트롤러 - Spring Boot 전환 후 @RestController 사용 예시
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/api/samples")
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class SampleController {
|
||||||
|
|
||||||
|
private final SampleService sampleService;
|
||||||
|
|
||||||
|
@GetMapping
|
||||||
|
public ResponseEntity<ApiResponse<List<SampleResponse>>> getAllSamples() {
|
||||||
|
List<SampleResponse> samples = sampleService.getAllSamples();
|
||||||
|
return ResponseEntity.ok(ApiResponse.success(samples));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public ResponseEntity<ApiResponse<SampleResponse>> getSampleById(@PathVariable Long id) {
|
||||||
|
SampleResponse response = sampleService.getSampleById(id);
|
||||||
|
return ResponseEntity.ok(ApiResponse.success(response));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping
|
||||||
|
public ResponseEntity<ApiResponse<SampleResponse>> createSample(
|
||||||
|
@Valid @RequestBody SampleRequest request) {
|
||||||
|
SampleResponse response = sampleService.createSample(request);
|
||||||
|
return ResponseEntity.status(HttpStatus.CREATED)
|
||||||
|
.body(ApiResponse.success(response));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/{id}")
|
||||||
|
public ResponseEntity<ApiResponse<SampleResponse>> updateSample(
|
||||||
|
@PathVariable Long id,
|
||||||
|
@Valid @RequestBody SampleRequest request) {
|
||||||
|
SampleResponse response = sampleService.updateSample(id, request);
|
||||||
|
return ResponseEntity.ok(ApiResponse.success(response));
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public ResponseEntity<ApiResponse<Void>> deleteSample(@PathVariable Long id) {
|
||||||
|
sampleService.deleteSample(id);
|
||||||
|
return ResponseEntity.ok(ApiResponse.success(null));
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue