도서 관리 앱 2 (1의 리팩토링+버전업) 5

리팩토링+버전업#4 도서 관리 app - 도서 등록, 도서 수정, 도서 삭제

#1 Book 등록 - Book.java (Entity 클래스 수정) package com.example.refactoringlibraryapp.domain.book; import com.example.refactoringlibraryapp.domain.user.loanhistory.UserLoanHistory; import lombok.AccessLevel; import lombok.NoArgsConstructor; import javax.persistence.*; import java.util.ArrayList; import java.util.Date; import java.util.List; @Entity @NoArgsConstructor(access = AccessLevel.PROTECTED) p..

리팩토링+버전업#3 도서 관리 app - 사용자 정보 출력, 수정, 삭제

#1 사용자 리스트 출력 - UserResponse 에 변수 id 추가 + 출력 정보 전달을 위해 매개변수 User를 가진 생성자 생성 (user->reponse 타입 변형) package com.example.refactoringlibraryapp.dto.user.response; import com.example.refactoringlibraryapp.domain.user.User; import lombok.AllArgsConstructor; import lombok.Getter; import java.util.Date; @Getter @AllArgsConstructor public class UserResponse { private Long id; private String name; private..

리팩토링+버전업#2 도서 관리 app - 파일 구조 잡기 + 사용자 등록

리팩토링+버전업#1에서 환경설정 틀을 잡았고 이번에는 파일 구조를 조정하고 사용자 등록(회원가입) 기능을 리팩토링(버전업) 진행해보겠다! - 현재까지의 파일 구조 위 파일 형태를 구조 요청과 응답 순서를 정리하면 (1) Postman(program/요청) (2) request 객체 -> controller 의 메소드 -> service 의 메소드 (3) repository의 메소드 & domain(Entity 클래스) & DB ( (4) => 경우에 따라서 reponse 객체 반환) 이런 식이다! 우선 이번 게시물에서는 회원가입 기능만 리팩토링할 것이다 [ 필요한 class 및 interface ] 1. UserController (contrller.user 패키지) ▶ http 호출에 따른 분기 2. ..

리팩토링+버전업#1 도서 관리 app - 환경설정 IntelliJ, Gradle, Spring Boot 및 정리

1. 테스트에 앞서 필요한 데이터베이스 테이블 생성 (수정된 테이블은 수정된 create문이 아닌 update문을 덧붙인 형태로 첨부하였다 이런 코드가 학습하기 더 좋을 것 같다!) CREATE DATABASE refactorlibrary use refactorlibrary CREATE TABLE user( id BIGINT AUTO_INCREMENT, name VARCHAR(25) NOT NULL, age INT, phone VARCHAR(15), join_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (id) ); //테이블 수정 ALTER TABLE user MODIFY phone VARCHAR(15) NOT NULL; //테이블 수정 ALTER T..