인프런 지식공유자 최태현 님의 자바 스프링부트 서버개발 올인원 강의 커리큘럼에 포함된 과제입니다.
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인
최태현 | Java와 Spring Boot, JPA, MySQL, AWS를 이용해 서버를 개발하고 배포합니다. 웹 애플리케이션을 개발하며 서버 개발에 필요한 배경지식과 이론, 다양한 기술들을 모두 학습할 뿐 아니라, 다양한
www.inflearn.com
문제 1

컨트롤러
@RestController //api의 진입지점으로
public class CalculatorController {
@GetMapping("/api/v1/calc")
public CalculatorRequest addMinusMultiply(@RequestParam int num1, int num2) {
return new CalculatorRequest(num1,num2);
}
DTO
public class CalculatorRequest {
private int add;
private int minus;
private int multiply;
public CalculatorRequest(int num1, int num2) {
this.add = num1 + num2;
this.minus = num1 - num2;
this.multiply = num1 * num2;
}
public int getAdd() {
return add;
}
public int getMinus() {
return minus;
}
public int getMultiply() {
return multiply;
}
}
결과

문제 2

컨트롤러
@RestController
public class DateOfWeekController {
@GetMapping("/api/v1/day-of-the-week")
public DayOfWeekResponse getDayOfWeek(@RequestParam("date") String date) {
LocalDate parsedDate = LocalDate.parse(date);
DayOfWeek dayOfWeek = parsedDate.getDayOfWeek();
return new DayOfWeekResponse(dayOfWeek.toString().substring(0,3));
}
}
DTO
public class DayOfWeekResponse {
private String dayOfWeek;
public DayOfWeekResponse(String dayOfWeek) {
this.dayOfWeek = dayOfWeek;
}
public String getDayOfWeek() {
return dayOfWeek;
}
}
결과

문제 3

컨트롤러
@RestController
public class CalculatorController {
@PostMapping("/api/sum")
public Integer sumNumbers(@RequestBody CalculatorSumRequest request) {
return request.getSum();
}
}
DTO
package com.group.libraryapp.controller.dto.calculator.request;
import java.util.List;
public class CalculatorSumRequest {
private List<Integer> numbers;
private int sum;
public List<Integer> getNumbers() {
return numbers;
}
public int getSum() {
int sum = 0;
for (Integer i : numbers)
{
sum += i;
}
return sum;
}
}
결과

'인프런 워밍업 클럽 1기 - 백엔드' 카테고리의 다른 글
| 6일차 과제 - Controller - Service - Repository 계층 분리 (0) | 2024.05.13 |
|---|---|
| 5일차 과제 - 클린코드 (0) | 2024.05.09 |
| 4일차 과제 - API 만들기 2 (0) | 2024.05.07 |
| 3일차 과제 - 람다식에 대해 (0) | 2024.05.03 |
| 1일차 과제 - 어노테이션(서버 개발을 위한 환경설정 및 네트워크 기초) (0) | 2024.04.29 |