diff --git a/src/main/java/com/example/domain/user/controller/UserController.java b/src/main/java/com/example/domain/user/controller/UserController.java index 3fb6864..a94e83d 100644 --- a/src/main/java/com/example/domain/user/controller/UserController.java +++ b/src/main/java/com/example/domain/user/controller/UserController.java @@ -1,17 +1,25 @@ package com.example.domain.user.controller; import com.example.domain.user.dto.CreateUserDto; +import com.example.domain.user.dto.UserDto; import com.example.domain.user.service.UserService; import lombok.RequiredArgsConstructor; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.util.List; + @RestController @RequestMapping("/user") @RequiredArgsConstructor public class UserController { private final UserService userService; + @GetMapping + public List getUsers() { + return userService.getUsers(); + } + @PostMapping("/join") public ResponseEntity join(@RequestBody CreateUserDto user) { userService.createUser(user); diff --git a/src/main/java/com/example/domain/user/dto/UserDto.java b/src/main/java/com/example/domain/user/dto/UserDto.java new file mode 100644 index 0000000..7de8f9a --- /dev/null +++ b/src/main/java/com/example/domain/user/dto/UserDto.java @@ -0,0 +1,15 @@ +package com.example.domain.user.dto; + +import com.example.domain.user.entity.User; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public class UserDto { + private long id; + private String name; + static public UserDto of(User user) { + return new UserDto(user.getId(), user.getName()); + } +} diff --git a/src/main/java/com/example/domain/user/service/UserService.java b/src/main/java/com/example/domain/user/service/UserService.java index db5e2a4..84218cb 100644 --- a/src/main/java/com/example/domain/user/service/UserService.java +++ b/src/main/java/com/example/domain/user/service/UserService.java @@ -2,6 +2,7 @@ import com.example.domain.post.repository.PostRepository; import com.example.domain.user.dto.CreateUserDto; +import com.example.domain.user.dto.UserDto; import com.example.domain.user.entity.User; import com.example.domain.user.repository.UserRepository; import com.example.global.util.UserUtil; @@ -11,6 +12,8 @@ import org.springframework.stereotype.Service; import org.springframework.web.server.ResponseStatusException; +import java.util.List; + @Service @RequiredArgsConstructor public class UserService { @@ -19,6 +22,12 @@ public class UserService { private final PasswordEncoder passwordEncoder; private final UserUtil userUtil; + public List getUsers() { + return userRepository.findAll().stream() + .map(UserDto::of) + .toList(); + } + public void createUser(CreateUserDto createUserDto) { if(isUserExist(createUserDto.getUsername())) throw new ResponseStatusException(HttpStatus.BAD_REQUEST, "Username already exists"); User user = User.builder()