본문 바로가기

spring boot5

spring boot의 test db환경에 testcontainers 적용 [삽질 후기] 본 글은 정확하지 않을 수 있습니다. 참고용으로만 봐주시면 감사하겠습니다. TestContainers 쓰게 된 이유 기존 로컬 테스트 db를 사용하였을 때 단점이 있다. CIDI환경에서 테스트 db를 따로 만들어줘야 한다. 빌드를 수행할 때, 테스트 DB가 연결되어 있지 않으면 빌드가 실패한다. 만약 팀원들과 로컬 db설정이 다르다면, 테스트 결과가 서로 일치하지 않을 수 있다. 그래서 해결 방안으로 처음 나온 게 인 메모리 db이다. 인메모리 db의 장점 테스트 속도가 빠르다 설정이 간단하다. (따로 db구축 안 해줘도 됨) 각 팀원의 로컬에서도 같은 결과가 나온다. cicd환경에서 따로 db 구축 안 해줘도 된다. 인메모리 db의 단점(h2) 실제 운영 db랑 다른 결과를 도출할 수 있다. 실제 운영.. 2023. 3. 17.
(2) spring boot 게시글 이미지 기능 구현 (AWS S3, AWS cloudfront) 본 글은 정확하지 않을 수 있습니다. 참고용으로만 봐주시면 감사하겠습니다. (1) spring boot 게시글 이미지 구현 흐름 (AWS S3) (2) spring boot 게시글 이미지 기능 구현 (AWS S3, AWS cloudfront) s3를 이용하여 스프링 파일 업로드를 구현하는 것은 생각보다 간단하다. s3에 이미지 저장을 요청하고, url을 받아오기만 하면 된다. 하지만 aws 서비스를 설정하는 과정이 생각보다 까다로웠다. 목차 AWS S3 생성 AWS IAM 생성 spring boot와 s3 연동 AWS cloudFront 생성 cloudFront와 S3 연동 spring 코드 수정 1. AWS S3 생성 aws s3에 들어가서 버킷을 하나 생성한다. 위 두 개의 설정을 제외한 설정은 모두.. 2023. 3. 8.
(1) spring boot 게시글 이미지 구현 흐름 (AWS S3) 본 글은 정확하지 않을 수 있습니다. 참고용으로만 봐주시면 감사하겠습니다. (1) spring boot 게시글 이미지 구현 흐름 (AWS S3) (2) spring boot 게시글 이미지 기능 구현 (AWS S3, AWS cloudfront) 상황 게시글에 여러 이미지를 등록할 수 있도록 요구사항이 바뀌었다. 바뀐 요구사항에 맞게 여러 가지 고민거리가 생겼다. 1. 이미지를 업로드하는 시점을 언제로 정할지? 내가 생각할 수 있었던 방식은 크게 두 가지였다. 사진 우측상단에 있는 올리기 버튼을 클릭하였을 때 게시글 내용과 이미지를 동시에 전송하는 방법 이미지를 등록하는 순간 이미지만 먼저 요청을 보내고 이후 올리기 버튼을 클릭하면 게시글 내용과 이미지 정보를 전송하는 방법 1번의 단점이 명확했기 때문에 고.. 2023. 3. 7.
[spring] yml파일 인식 못할 경우 본 글은 정확하지 않을 수 있습니다. 참고용으로만 봐주시면 감사하겠습니다. 현재 폴더 구조는 대략 이렇다. backend-security폴더는 서브모듈이며 배포환경에 맞는 환경파일들을 모아놓았다. # application.yml spring: profiles: active: prod 평소와 같이 application.yml에서 profiles를 prod로 지정해 주면 backend-security/application-prod.yml이 설정될 줄 알았는데 안 되었다. 원인은 간단했다. spring에서 환경파일을 인식해 주는 범위가 resources 바로 아래이거나 resources/config 이기 때문이다. 정확한 정보는 아래 링크에 있다. https://docs.spring.io/spring-boot.. 2023. 2. 9.
반응형