본문 바로가기

프로젝트23

GiftFunding) 예외 처리하기 (@ExceptionHandler, @RestControllerAdvice) 각 에러들을 의도한 errorCode, Message 형태로 보여주기 위해 ErrorResponse dto생성. @Getter @Setter @NoArgsConstructor @AllArgsConstructor @Builder public class ErrorResponse { private ErrorCode errorCode; private String errorMessage; } Controller에서 Return할 때 발생하는 에러를 처리하기 위해 GlobalHandler생성 GlobalExceptionHandler @Slf4j @RestControllerAdvice public class GlobalExceptionHandler { @ExceptionHandler(UserException.clas.. 2023. 11. 21.
GiftFunding) @EntityListeners, @EnableJpaAuditing 으로 생성 날짜, 수정 날짜 자동 입력하기 - Entity필드에 붙여서 사용하는 어노테이션 @CreatedDate : 필드에 현재 날짜를 주입. @CreatedBy : 필드에 생성한 사람을 주입. @LastModifiedDate : 필드에 마지막으로 수정된 날짜 주입. @ LastModifiedBy : 필드에 마지막으로 수정한 사람 주입. - @MappedSuperclass : 공통 매핑 정보가 있을 때 사용하며 부모 클래스에서 선언하고 필요한 곳에서 상속받아서 사용. - @Column(updatable = false) : 생성일자는 수정 불가능하도록 설정. - @Column(updatable = true) : 수정일자는 수정 가능하도록 설정. default 값이라 생략함. - @EntityListeners(AuditingEntityListene.. 2023. 11. 21.
GiftFunding) 인텔리제이 DB 연결 (Mysql) build.gradle에 의존성 추가 runtimeOnly 'com.mysql:mysql-connector-j' 데이터베이스 생성 create database [db명]; 계정 생성 create user '계정명'@'도메인 접속 권한' identified by '패스워드'; flush privilges; ex) 'testdb1'@'%' identified by 1234; // % : 모든 IP 도메인에서 접속허용 // localhost : 127.0.0.1에서만 접속허용 계정에 DB 접근 권한 부여 grant all privileges on DB명.* to '계정명'@'도메인 접속 권한'; flush privileges; application.properties에 db연결을 위한 정보 입력 spring... 2023. 11. 21.
GiftFunding) ERD 작성 필요한 기능들은 README.md에 작성해보았고 이제 이 기능들을 구현하기 위해서 필요한 테이블 설계를 진행해보려고 한다. soeun135/GiftFunding: 선물하기 펀딩 프로젝트 (11.13 ~ 12.15) (github.com) GitHub - soeun135/GiftFunding: 선물하기 펀딩 프로젝트 (11.13 ~ 12.15) 선물하기 펀딩 프로젝트 (11.13 ~ 12.15). Contribute to soeun135/GiftFunding development by creating an account on GitHub. github.com 테이블마다의 관계를 설정할 때 식별/비식별 관계가 존재 - 식별관계 (A개체의 기본키가 B개체의 외래키면서 동시에 기본키도 됨.) 부모 테이블의 기본.. 2023. 11. 17.
GiftFunding) 프로젝트 셋업 드디어 개인 프로젝트의 시작이다. 프로젝트의 주제와 기능 리뷰를 마치고 Spring Initializr로 세팅을 하는데에 있어서 이전까지는 강의에서 강사님들이 세팅하는데로 따라했지만 "왜" 사용했는지가 제일 중요한 것 같아 하나씩 알아가면서 진행해보려고 한다. - 일단 LTS(Long Term Support)에 따라 제일 기간이 긴건 8이다. java 8부터 lambda, Stream을 지원한다. (11부터는 var 타입추론) 생각해보니까 이전 배당금 프로젝트에서 var 타입을 많이 사용했었는데 자바 11버전을 사용해서 그럴 수 있었던 것이다. 참고로 Spring boot 3.x버전부터는 자바 17을 사용해야한다. 나는 스프링부트 2.7.17버전을 사용할 것이고 자바는 8을 사용할 것이다. Spring .. 2023. 11. 16.
728x90