문제 1
두 수를 입력하면, 다음과 같은 결과 나오는 GETAPI를 만들어 보자!
- path : /api/v1/calc이다.
- 쿼리 파라미터 : num1, num2
1. CalculatorController
@RestController
public class CalculatorController {
@GetMapping("/api/v1/calc")
public Calc Calculator(CalcNumber request) {
return new Calc(request);
}
}
2. Calc Class
package com.group.libraryapp.homework;
public class Calc {
private int add;
private int minus;
private int multiply;
public Calc(CalcNumber number) {
this.add = number.getNum1() + number.getNum2();
this.minus = number.getNum1() - number.getNum2();
this.multiply = number.getNum1() * number.getNum2();
}
public int getAdd() {
return add;
}
public int getMinus() {
return minus;
}
public int getMultiply() {
return multiply;
}
}
3. CalcNumber Class
package com.group.libraryapp.homework;
public class CalcNumber {
private int num1;
private int num2;
public CalcNumber(int num1, int num2) {
this.num1 = num1;
this.num2 = num2;
}
public int getNum2() {
return num2;
}
public int getNum1() {
return num1;
}
}
3. 결과
문제 2
날짜를 입력하면, 몇 요일인지 알려주는 GET API를 만들어 보자!
path와 쿼리 파라미터는 임의로 만들어도 상관없다.
1. Controller
@GetMapping("/api/v1/day-of-the-week-jay")
public Day DayofTheWeek(String date) {
LocalDate parsed = LocalDate.parse(date);
return new Day(String.valueOf(parsed.getDayOfWeek()).substring(0, 3));
}
2. Day Class
package com.group.libraryapp.homework;
public class Day {
private String day;
public Day(String day) {
this.day = day;
}
public String getDay() {
return day;
}
}
3. 결과
문제 3
여러 수를 받아 총 합을 반환하는 POST API를 만들어 보자!
API에서 받는 Body는 다음과 같은 형태이다. (HINT : 요청을 받는 DTO에서 List를 갖고 있으면 JSON의 배열을 받을 수 있습니다.)
1. ListNum
package com.group.libraryapp.homework;
import java.util.List;
public class ListNum {
private List<Integer> numbers;
public ListNum(){
}
public ListNum(List<Integer> numbers) {
this.numbers = numbers;
}
public List<Integer> getNumbers() {
return numbers;
}
}
2. CalculatorController
@RestController
public class CalculatorController {
@PostMapping("/list")
public int ListAdd(@RequestBody ListNum request) {
int sum = 0;
for(Integer num : request.getNumbers()) {
sum += num;
}
return sum;
}
}
3. 결과
'Inflearn' 카테고리의 다른 글
인프런 워밍업 클럽 0기 - BE 5일차 과제 (0) | 2024.02.23 |
---|---|
인프런 워밍업 클럽 0기 - BE 4일차 과제 (0) | 2024.02.22 |
인프런 워밍업 클럽 0기 - BE 3일차 과제 (0) | 2024.02.21 |
인프런 워밍업 클럽 0기 - BE 1일차 과제 (0) | 2024.02.19 |