📌 문제 1

👩🏻💻 Controller 코드
@RestController
public class CalcController {
// problem1
@GetMapping("/api/v1/calc")
public Calculator calculateNums(CalculatorRequest request) {
return new Calculator(request.getNumber1(), request.getNumber2());
}
}
👩🏻💻 Request DTO 코드
package com.group.libraryapp.dto.homework2.request;
public class CalculatorRequest {
private final int num1;
private final int num2;
public CalculatorRequest(int num1, int num2) {
this.num1 = num1;
this.num2 = num2;
}
public int getNumber1() {
return num1;
}
public int getNumber2() {
return num2;
}
}
👩🏻💻 Response DTO 코드
package com.group.libraryapp.dto.homework2.response;
public class CalculatorResponse {
private Integer add;
private Integer minus;
private Integer multiply;
public CalculatorResponse(int num1, int num2) {
this.add = num1 + num2;
this.minus = num1 - num2;
this.multiply = num1 * num2;
}
public Integer getAdd() {
return add;
}
public Integer getMinus() {
return minus;
}
public Integer getMultiply() {
return multiply;
}
}
🔍 Postman 결과

📌 문제 2

👩🏻💻 Controller 코드
@RestController
public class CalcController {
// problem2
@GetMapping("/api/v1/day-of-the-week")
public DateResponse calculateDay(DateRequest request) {
String date = request.getDate();
String[] dateArr = date.split("-");
int[] dateInt = Stream.of(dateArr).mapToInt(Integer::parseInt).toArray();
String dayOfWeek = LocalDate.of(dateInt[0], dateInt[1], dateInt[2])
.getDayOfWeek().getDisplayName(TextStyle.SHORT, Locale.US);
dayOfWeek = dayOfWeek.toUpperCase();
return new DateResponse(dayOfWeek);
}
}
👩🏻💻 Request DTO 코드
package com.group.libraryapp.dto.homework2.request;
public class DateRequest {
private final String date;
public DateRequest(String date) {
this.date = date;
}
public String getDate() {
return date;
}
}
👩🏻💻 Response DTO 코드
package com.group.libraryapp.dto.homework2.response;
public class DateResponse {
private String dayOfTheWeek;
public DateResponse(String dayOfTheWeek) {
this.dayOfTheWeek = dayOfTheWeek;
}
public String getDayOfTheWeek() {
return dayOfTheWeek;
}
}
🔍 Postman 결과

📌 문제 3

👩🏻💻 Controller 코드
@RestController
public class CalcController {
// problem3
@PostMapping("/api/v1/sum-all-numbers")
public Integer sumAllNumbers(@RequestBody NumsRequest request) {
return request.getNumbers().stream().mapToInt(Integer::intValue).sum();
}
}
👩🏻💻 Request DTO 코드
package com.group.libraryapp.dto.homework2.request;
import java.util.List;
public class NumsRequest {
private List<Integer> numbers;
public List<Integer> getNumbers() {
return numbers;
}
}
🔍 Postman 결과

강의 링크
'스터디 > 워밍업-클럽' 카테고리의 다른 글
| [인프런 워밍업 클럽] 5일차 - 클린 코드 (0) | 2024.02.23 |
|---|---|
| [인프런 워밍업 클럽] 4일차 - 추가적인 API 만들기 (0) | 2024.02.22 |
| [인프런 워밍업 클럽] 3일차 - 익명 클래스와 람다식 (0) | 2024.02.21 |
| [인프런 워밍업 클럽] 1일차 - 어노테이션에 대해 (0) | 2024.02.19 |