🔥새해맞이 특별 라이브 선착순 신청🔥

[인프런 워밍업 클럽 BE 0기] 2일차 과제

[인프런 워밍업 클럽 BE 0기] 2일차 과제

문제 1

두 수를 입력하면, 다음과 같은 결과 나오는 GETAPI를 만들어 보자!

  • path : /api/v1/calc이다.

  • 쿼리 파라미터 : num1, num2


@GetMapping("/api/v1/calc")
    public Calc Calculator(CalcNumber request) {
        return new Calc(request);
    }
public class CalcNumber {
    private int num1;
    private int num2;

    public CalcNumber(int num1, int num2) {
        this.num1 = num1;
        this.num2 = num2;
    }
    public int getNum1() {
        return num1;
    }
    public int getNum2() {
        return num2;
    }
}
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;
    }
}

결과

image



문제 2

날짜를 입력하면, 몇 요일인지 알려주는 GET API를 만들어 보자!

path와 쿼리 파라미터는 임의로 만들어도 상관없다.


 

@GetMapping("/api/v1/day-of-the-week")
    public Day DayofWeek(String date) {
        LocalDate parsed = LocalDate.parse(date);
        return new Day(String.valueOf(parsed.getDayOfWeek()).substring(0, 3));
    }

 

public class Day {
    private String day;

    public Day(String day) {
        this.day = day;
    }
    public String getDay() {
        return day;
    }
}

결과

image


 

문제 3

여러 수를 받아 총 합을 반환하는 POST API를 만들어 보자!

API에서 받는 Body는 다음과 같은 형태이다. (HINT : 요청을 받는 DTO에서 List를 갖고 있으면 JSON의 배열을 받을 수 있습니다.)


@PostMapping("/list")
    public int ListAdd(@RequestBody listNum request) {
        int sum = 0;
        for(Integer num : request.getNumbers()) {
            sum += num;
        }
        return sum;
    }
public class listNum {
    private List<Integer> numbers;
    public listNum() {

    }
    public listNum(List<Integer> numbers) {
        this.numbers = numbers;
    }
    public List<Integer> getNumbers() {
        return numbers;
    }
}

결과

image

 

 

댓글을 작성해보세요.

채널톡 아이콘