[Practice] 관리자 API 만들기 (1)
2021. 4. 15. 00:40ㆍSpring/Practice
1. 문제
- 사용자 목록과 사용자 수를 함께 반환하는 관리자 API
- ResponseData의 구조를 다음과 같은 형식으로 작성하여 결과 반환
{
"totalCount": N,
"data" : user 목록 컬렉션
}
2. 풀이
- ResponseMessage.java
package com.example.jpa.sample.user.model;
import com.example.jpa.sample.user.entity.User;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Data
public class ResponseMessage {
private Long totalCount;
private List<User> data;
}
- ApiAdminUserController.java
package com.example.jpa.sample.user.controller;
import com.example.jpa.sample.user.entity.User;
import com.example.jpa.sample.user.model.ResponseMessage;
import com.example.jpa.sample.user.repository.UserRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RequiredArgsConstructor
@RestController
public class ApiAdminUserController {
private final UserRepository userRepository;
// 문제 1
@GetMapping("/api/admin/user")
public ResponseMessage userList() {
Long totalUserCount = userRepository.count();
List<User> userList = userRepository.findAll();
return ResponseMessage.builder()
.totalCount(totalUserCount)
.data(userList)
.build();
}
}
728x90
'Spring > Practice' 카테고리의 다른 글
[Practice] 관리자 API 만들기 (3) (0) | 2021.04.15 |
---|---|
[Practice] 관리자 API 만들기 (2) (1) | 2021.04.15 |
[Practice] 사용자 API 만들기 (15) (0) | 2021.04.14 |
[Practice] 사용자 API 만들기 (14) (0) | 2021.04.14 |