반응형

어드민페이지 9

[Java] 어드민페이지 만들기 1편~최종 모음 (JPA, Rest API, API 명세)

[Java] 어드민페이지 만들기 1편~최종 모음 (JPA, Rest API, API 명세) 어드민페이지 포스팅을 하다 보니 글이 여러 개가 나오게 되었다. 이번 페이지는 링크 모음 페이지로써, 필요한 부분만 찾아 들어가기 쉽게 만들었다. 1~2번은 어드민페이지를 만들기 위해 필요한 사전학습 과정이며, 3번부터 어드민페이지를 본격적으로 만들기 시작한다. 아래 순서대로 학습을 이어가면 자바를 이용해 어드민 페이지를 만드는 과정을 이해할 수 있을 것이다. 1. Spring Boot에서 Get / Post 메소드 사용법 @RequestMapping @GetMapping 멀티 파라미터의 경우 객체로 받기 (String 값으로 리턴, JSON 형식으로 리턴) @PostMapping Rest Client 툴을 이용한..

Java 2022.05.11

[어드민 페이지 만들기] 서비스 로직 개발_API 만들기 (Update, Delete)

[어드민 페이지 만들기] 서비스 로직 개발_API 만들기 (Update, Delete) 3. Update update의 경우 create와 URL 주소도 동일하는 등 매우 유사하다. 대신 id 값이 들어있고, 메소드 방식은 PUT이라는 차이점이 있다. request는 어떤 id에 대해서 어떤 값을 업데이트 해달라는 요청이 오면 그 값들을 바꿔주고, response는 동일하게 user 객체를 가지고 해당 정보를 내려주면 된다. UserApiController @Slf4j @RestController @RequestMapping("/api/user") public class UserApiController implements CrudInterface { @Autowired private UserApiLogi..

Java 2022.03.24

[어드민 페이지 만들기] 서비스 로직 개발_API 만들기 (Create, Read)

[어드민 페이지 만들기] 서비스 로직 개발_API 만들기 (Create, Read) 이제는 service를 만들어야 한다. 서비스는 어드민 프로젝트의 서비스 로직을 담당하는 부분으로써, 어떤 데이터를 만들거나 수정하는 부분을 담당할 것이다. UserApiLogicService @Service public class UserApiLogicService implements CrudInterface { @Autowired private UserRepository userRepository; // 1. request data 가져오기 // 2. user 생성하기 // 3. 생성된 데이터 기준으로 UserApiResponse 만들어서 return하기 @Override public Header create(Head..

Java 2022.03.21

[어드민 페이지 만들기] Request, Response (with API 명세)

[어드민 페이지 만들기] Request, Response (with API 명세) 이제부터는 각 서비스를 직접 만들어가면서 데이터 부분(json 바디 부분)이 어떤식으로 생성되고, DB를 조회해봄으로써 어떤식으로 만들어지는지 확인해보자. 이전까지는 기본적인 부분을 다뤄봤다면 이제부터는 실질적인 서비스 로직을 개발한다. 1. Request 사용자 API중에 생성에 해당하는 create를 봐보자. 아래 api 명세서에 나와있듯이 json 바디에 들어갈 데이터를 받아줄 준비를 해야한다. 해당 request를 받아주기 위해, network 패키지 하위에 request 패키지를 하나 만든다. 앞으로 요청(request)에 해당하는 클래스는 모두 여기에 만들 것이다. 위 API 문서에서 공통 부분에 해당하는 통신시..

Java 2022.03.17

[어드민 페이지 만들기] 헤더(Header) 파일 정의하기, CRUD 인터페이스 만들기

[어드민 페이지 만들기] 헤더(Header) 파일 정의하기, CRUD 인터페이스 만들기 위 response sample에서 노란색으로 칠해져있는 박스는 기본적으로 들어가는 정보들이 들어있는 부분이다. transaction_time: 해당 통신이 일어난 시간 result_code: 해당 API에 대한 응답 description: 설명 물론 result_code의 경우, http status code로 조절하는 경우도 있지만, 정상적/비정상적인 통신이나 권한을 제외하고 일반적으로 통신이 되었을 때, 직접 정의한 에러 코드를 내려주기 위해 result_code를 따로 정의한 것이다. 녹색으로 칠해져 있는 박스는 데이터에 해당하는 부분으로, 매번 바뀌는 값이다. 예를 들어, 사용자를 조회할 때와 상품을 조회할 ..

Java 2022.03.14

[어드민 페이지 만들기] JPA 추가기능 & @Builder, @Accessors(chain = true)

[어드민 페이지 만들기] JPA 추가기능 & @Builder, @Accessors(chain = true) JPA 추가기능 private LocalDateTime createdAt; private String createdBy; private LocalDateTime updatedAt; private String updatedBy; createdAt, createdBy, updatedAt, updatedBy는 엔티티를 만들 때마다 공통으로 들어가는 컬럼이다. 자주 사용되는 만큼 이 부분을 따로 빼서 작업하면 더 좋을 것 같다. JPA에서는 객체가 생성되거나 데이터베이스에 들어갈 때 이러한 공통 부분이 자동으로 들어가게끔 설정할 수 있다. import org.springframework.context.an..

Java 2022.03.10

[어드민 페이지 만들기] 연관관계 설정하기

[어드민 페이지 만들기] 연관관계 설정하기 연관관계 설정하기 지난 시간 동안 ERD 설계, Table 생성, Entity 생성, Repository 생성, JUnit 테스트 코드 작성이 끝났다. 이제 연관관계 설정을 할 차례이다. 지난 시간에 설계한 테이블간 연관관계도를 보면서 진행해보자. 관련 글은 아래 링크를 통해 확인할 수 있다. [어드민 페이지 만들기] ERD 설계 & Table 생성 & Entity 생성 1. User : OrderGroup = 1 : N User 엔티티 @Data // 기본 생성자와 변수에 대해 get, set 메서드 생성 @AllArgsConstructor // 모든 매개변수를 가진 생성자도 추가 @NoArgsConstructor // 파라미터가 없는 생성자 생성 @Entit..

Java 2022.03.07

[어드민 페이지 만들기] Repository 생성 & JUnit 테스트코드 작성

[어드민 페이지 만들기] Repository 생성 & JUnit 테스트코드 작성 Repository 생성하기 지난 번에 ERD 설계 & Table 생성 & Entity 생성을 마쳤다. 이제 이를 바탕으로 Repository를 생성할 차례이다. 1. category 리파지토리 생성 @Repository public interface CategoryRepository extends JpaRepository { } 위와 같이 JpaRepository를 상속받는 CategoryRepository 인터페이스를 만든다. 2. user 리파지토리 생성 지난 글대로 따라왔다면 UserRepository는 아래와 같이 이미 존재할 것이다. @Repository public interface UserRepository e..

Java 2022.03.03

[어드민 페이지 만들기] ERD 설계 & Table 생성 & Entity 생성

[어드민 페이지 만들기] ERD 설계 & Table 생성 & Entity 생성 ERD 설계하기 이제 본격적으로 쇼핑몰 어드민 페이지를 만들어보자. 우선 어드민 페이지를 만들기 전에 ERD 설계부터 해야 한다. 다음과 같이 7개 테이블을 생성할 것이며 각 테이블간의 연관관계는 다음과 같다. admin_user는 다른 테이블과 연관관계 없이 설정을 해둠으로써 모든 테이블을 조회할 수 있게 하였다. Table 생성하기 & Entity 생성하기 ERD 설계가 끝났다면 이제 테이블을 생성해야 한다. 내가 만들 쇼핑몰 어드민 페이지에 필요한 테이블 수는 총 7개이며, 각 테이블에 필요한 컬럼들은 아래와 같다. 1-1. category 테이블 설계 파트너사의 type을 구분하는 용도로 사용한다. 여기서 말하는 카테고..

Java 2022.02.27
반응형