분류 전체보기 47

BaseEntity 생성하기

처음 Entity를 만들 땐 BaseEntity를 굳이 생성할 필요를 못느꼈는데, JPA를 사용하며 개발하다보니 Entity마다 공통으로 쓰이는 변수와, 공통으로 상속하는 인터페이스 들이 있어서 BaseEntity를 만들게 되었다. 수정사항이 있을 때마다 수정할 예정이다. 1. implements Persistable save 가 단순히 create인 줄 알고 사용하다가 알게된 인터페이스 class abstract BaseEntity implements Persisable{ @CreatedDate private LocalDateTime createdDate; @Override public boolean isNew() { return createdDate == null; } } getId는 BaseEnti..

[Spring Boot] 개발환경 설정 -(6) profile별 로그 설정하기(hibernate 등)

회사에서 System.out.println 보다 debug 쓰는게 너무 편리하고개발서버나 운영서버에서 로그를 볼 수 있기 때문에미루던 로그 설정을 해보려고 한다. https://awse2050.tistory.com/72https://goddaehee.tistory.com/206 위 블로그들 설명이 아주 자세하다. https://zzang9ha.tistory.com/399이 블로그는 hibernate 로그 설명이 잘 되어있다. yml 으로도 설정 할 수 있지만 logback-spring.xml을 생성해서 설정하겠다. 결론적으로는 어떤 것을 사용해도 아무 문제가 없고, 기본적인 구조는 비슷하기 때문에 편한 것을 사용하면 되겠다. 개인적으로는 yml을 사용하는 것이 더 구조를 파악하기 쉽고, 중복되는 코드가 ..

Spring Boot 2022.11.01

[Spring Boot] Ggmail로 인증 링크를 포함한 메일 보내기

https://sdy-study.tistory.com/269 Spring Boot 로 이메일 회원가입 하기 토이 프로젝트를 하다가 회원가입과 로그인, 로그아웃 기능을 만들게 되었는데 그때 사용했던 개념들을 정리하고자 한다 먼저 이메일을 통해서 회원가입을 했던 과정을 정리한다 - 개발환경 spr sdy-study.tistory.com 위 글을 참고하여 재사용 가능하도록 커스텀해서 작성하였다. 1. Gmail SMTP 설정 예전에는 보안 수준 낮은 앱의 액세스 허용만 체크하면 됐지만 최근에는 정책이 바뀌어 2차 인증을 해주고 앱 비밀번호를 기억해둬야 한다. https://hyunmin1906.tistory.com/276 [Go] Google Gmail SMTP 설정 방법 및 메일 전송 ■ SMTP 간이 우편..

[AWS] EC2에 SpringBoot 프로젝트 배포하기

1. EC2 생성 https://bcp0109.tistory.com/356 AWS 1편: EC2 생성 후 Spring Boot 띄우기 Overview AWS EC2 인스턴스를 생성하고 Spring Boot 서버를 띄워보는 것까지 진행합니다. 주 목표는 서버를 외부에 제공하는 거라서 따로 배포 시스템을 구축하지 않고 단순히 빌드 파일을 복사해서 수 bcp0109.tistory.com 2. PuTTY로 ec2에 접속 https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/putty.html PuTTY를 사용하여 Windows에서 Linux 인스턴스에 연결 - Amazon Elastic Compute Cloud 프라이빗 키의 암호는 추가 보호 계층입니다. 프라이..

[AWS] 프로덕션 배포-② 일라스틱 빈스톡 배포

1. eb init (1) eb cli 설치 $ pip isntall awsebcli --upgrade (2) eb init으로 애플리케이션을 생성 $ eb init PigSpace-backend *Select a defaultt region -> 10(ap-northeast-2 Seoul) *Select a platform -> 5(Java) *Select a platform branck -> 1(Corretto 11 running on 64bit Amazon Linux 2) 여기서 Corretto11로 하는 이유 아마존이 자신들의 서비스에 사용하면서 검증되고, 비용 없이 장기 지원도 한다. JDK 8에 해당하는 Corretto 8은 2026년 5월까지 지원하고, JDK 11에 해당하는 Corretto..

개인프로젝트 2022.07.25

[AWS] 프로덕션 배포-① 설정

출처 : SPA, REST API 기반 우엡 애플리케이션 개발 React.js, 스프링 부트, AWS로 배우는 웹 개발 101-김다정 지음- 책을 보면서 정리한 포스팅이다. 1. AWS CLI 설치 CLI : 터미널이나 파워셸에서 명령어를 이용해 AWS 리소스에 접근할 수 있다. https://aws.amazon.com/ko/cli/ AWS 명령줄 인터페이스 aws-shell은 명령줄 셸 프로그램으로서, AWS 명령줄 인터페이스를 사용하는 새로운 사용자와 고급 사용자 모두에게 도움이 되는 편의 기능 및 생산성 기능을 제공합니다. 주요 기능은 다음과 같습 aws.amazon.com 윈도우> 여기서 64bit를 눌러 설치 2. 사용자 추가 http://console.aws.amazon.com https://..

[Spring Boot] 개발환경 설정 -(5) mySQL JPA 연동하기-②

지난 포스팅에서 데이터베이스와 사용자, 테이블을 만들었다. 이번 포스팅에서는 spring boot 설정과 생성한 테이블에서 데이터를 조회하고 추가해볼 것이다. 1. 프로젝트 설정 (1) Build.Gradle dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-rest' implementation 'org.springframework.boot:spring-boot-starter-web' annotationProcessor 'org.projectlombok:lombok' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:..

Spring Boot 2022.06.30

[Spring Boot] 개발환경 설정 -(5) mySQL JPA 연동하기-①

이번 포스팅에서는 mysql설치, dbeaver 연결하고, 테이블 생성까지 해보겠다. 회사에서 여러 프로젝트를 진행했는데 전부 dbeaver를 사용해서 dbeaver로 선택하였다. 1. mySQL 설치 https://dev.mysql.com/downloads/file/?id=511553 MySQL :: Begin Your Download The world's most popular open source database Contact MySQL | Login | Register dev.mysql.com 여기서 아래 No thanks, just start my download. 클릭 2. DataBase 생성 1) 관리자 계정 root로 접속 명령프롬프트를 켜서 mysql -uroot -p 비밀번호 입력 2..

Spring Boot 2022.06.30

[Spring Boot] 개발환경 설정 -(4) 응답 객체 생성하기

컨트롤러를 작성할 때 일일이 응답코드를 설정해주고, ResponseEnity를 리턴해줘야 하는게 번거롭다. 회사에서는 컨트롤러에서 공통으로 쓸 수 있는 클래스를 만들어 상속해서 쓰고 있다. 코딩할 때 공통되는 부분을 최소화 하지 않으면 너무 찝찝해서 최대한 공통되는 코드들은 모아두려고 한다. 이번 포스팅에서는 내가 편하자고 만든 코드를 정리해두었다. ResponseEntity 생성 @Data public class ResponseEntity{ private int code; private String message; private T data; public ResponseEntity(int code, String message, T data) { this.code = code; this.message =..

Spring Boot 2022.06.02