User 생성 API 짜기

객체의 직렬화 ·2023년 11월 8일

Springboot

목록 보기
3/5

먼저
Usercontroller를 만들어준다.

package com.group.libraryapp.controller.user;

import com.group.libraryapp.domain.user.User;
import com.group.libraryapp.dto.user.request.UserCreateRequest;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserController {

    @PostMapping("/user") //post /user 로 들어온다
    public void saveUser(@RequestBody UserCreateRequest request) {
        users.add(new User(request.getName(), request.getAge()));
    }

}

user를 생성해준다.

domain > user < User class 생성
여기서 domain은 controller와 dto와 같은 level로 생성해준다

package com.group.libraryapp.domain.user;

public class User {

    private String name;
    private Integer age;

generator -> constructor를 생성하고 예외처리를 해준다
(name null값이 들어갔을때 throw 던지는것)

 public User(String name, Integer age) {
        if (name == null || name.isBlank()) {
            throw new IllegalArgumentException(String.format("잘못된 name(%s)이 들어 왔습니다", name));
        }
        this.name = name;
        this.age = age;
    }


전체 코드

다시 usercontroller 에서
user를 저장하려는 list를 만들어준다.

private final List<User> users = new ArrayList<>(); // Lisf로 담아서 저장

profile
Free sprit engineer | 커밋할때마다 손 떨리는 화학원소 - 탄소(C)같은 초급개발자 | James Gosling 같은 사람이 되고 싶은 싶은 자바꿈나무🌱

0개의 댓글