profile
소소한 행복을 즐기는 백엔드 개발자입니다😉
post-thumbnail

SpringSecurity - Method 단위 인가

수정이나 삭제 등의 비즈니스 로직을 구현할 때, 엔티티의 소유자를 확인하고자 하는 로직을 작성해야할 때가 있습니다.이런 경우에 서비스 코드마다 유저가 소유자인지 확인하는 코드를 써야 합니다.아래에 보이는 코드는 짧을 지 모르지만, 서비스 코드마다 중복된 검증 로직이 들

2일 전
·
0개의 댓글
·
post-thumbnail

멀티모듈에서의 Dockerfile 최적화하기

기존 프로젝트에서 작성했던 Dockerfile을 통해 이미지를 빌드하면 속도 저하 및 많은 용량에 대한 문제가 있어, 그에 대한 해결을 공유하고자 합니다.프로젝트에 대한 구성은 아래의 글에서 확인할 수 있습니다.\[Github Actions + Docker + EC2]

6일 전
·
0개의 댓글
·
post-thumbnail

[Github Actions + Docker + EC2] 로 배포 자동화 구성하기

현재의 개발에서는 지속적 배포(Continuous Deployment, CD)를 통해 빠르고 안정적인 서비스 제공이 필수가 되었습니다. 특히, MSA(Microservices Architecture)를 채택한 프로젝트에서는 각 서비스의 독립성과 배포 효율성을 극대화하는

6일 전
·
0개의 댓글
·
post-thumbnail

내일배움캠프(스프링 심화 1기) 솔직 후기!

내일배움캠프 스프링 심화 1기를 수료하고 그에 대한 저의 개인적인 후기를 공유하고자 합니다~!저는 컴퓨터과학과를 전공한 후, 졸업하고 1년 동안 혼자서 방향을 잡지 못하고 방황했습니다. 개발 공부를 하긴 했지만, 체계적인 학습이 부족하여 실질적인 기술을 쌓는 데 어려움

2024년 11월 1일
·
0개의 댓글
·
post-thumbnail

SpringBoot 멀티모듈 MSA 에서의 Docker 빌드 문제

진행 중인 MSA 프로젝트에서 각 서비스 모듈에 대해 Docker를 활용한 CI/CD 파이프라인을 구축하던 중 Docker 환경 구축에 관련된 몇 가지 문제를 겪었습니다. 이를 해결하는 과정을 공유하고자 합니다.프로젝트가 멀티모듈 구조로 되어 있어서, 서비스 모듈별로

2024년 10월 14일
·
0개의 댓글
·
post-thumbnail

Docker 실행 시 port 사용 불가 에러

프로젝트를 진행하면서, 여러 팀원과 환경을 맞추기 위해 편리하게 docker 를 설정 후 실행하고 있었다.그런데, 어느 날 잘 실행되던 docker 가 안되는 것이다...!아래 사진은 에러 내용이다.내용을 살펴보면, docker를 2181 port 로 binding 하

2024년 10월 9일
·
0개의 댓글
·
post-thumbnail

WebMvcTest 진행 중 ComponentScan 에러

프로젝트 진행 중, 컨트롤러에 대한 단위테스트를 하기 위해 Mockito 와 WebMvcTest 를 이용해 테스트를 작성하고 있었다.현재 프로젝트는 여러 멀티모듈로 이어져 있고, application 에서 다른 모듈의 component 도 scan 하고 있어서 Spri

2024년 10월 6일
·
0개의 댓글
·
post-thumbnail

Contoller Test : Pageable 관련 에러

Springboot API 를 개발하고 컨트롤러 테스트를 작성하던 중 발생하는 에러..전체 조회 테스트에 Pageable 객체가 모킹돼있어서 그런 것 같았다. 아래는 테스트 코드는 전체 조회(검색)을 하는 코드이다. Response 로 가는 객체의 필드 존재 여부를 확

2024년 9월 9일
·
0개의 댓글
·
post-thumbnail

queryDsl 로 조회 검색 같이 처리하기

Spring Boot 로 API 기능들을 개발하다보면 전체 조회 및 검색 기능을 어떻게 처리할까 고민이 된다.많은 검색 파라미터, 권한 조건 처리(Security Filter 에서 1차로 거를 수 있지만 그렇지 않은 경우), 페이징 처리 등을 그냥 JPA 로 개발하는

2024년 9월 3일
·
0개의 댓글
·
post-thumbnail

Spring boot로 kafka와 연결하기(kafka replication error)

Kafka 학습을 위한 실습 진행 중 만난 에러...docker-compose-kafka-errordocker로 kafka 컨테이너를 실행하고 스프링부트 프로젝트에서 작성된 producer 와 consumer 를 실행하면 위와 같은 에러가 무한으로 발생했다.딱 보면 b

2024년 8월 19일
·
0개의 댓글
·
post-thumbnail

Redis & Cache

캐싱은 Spring 내부에서도 비교적 간단하게 구성할 수 있다.redis 와 함께 SpringBoot 에서 캐싱을 적용하는 방법을 알아보자.캐싱을 사용하기 위한 configuration 을 작성해준다@EnableCaching : CacheManger의 구현체가 Bean

2024년 8월 13일
·
0개의 댓글
·

MSA - 간단한 상품 주문 프로젝트 : 생성(주요 설정, 의존성 설치)

simple-msa-order-product지난 시간에는 Spring Cloud 를 사용하여 msa 의 기본적인 개념과 동작 과정을 설명했다. 이번에는 위 사진과 같이 프로젝트를 구성해보겠다.RequirementSpringBoot 3.3.2Java17gradlemsa

2024년 8월 13일
·
0개의 댓글
·
post-thumbnail

Docker 에 대해 알아보기

2024년 8월 12일
·
0개의 댓글
·
post-thumbnail

SpringBoot 에 Redis 적용

이전 글에서는 Redis 자체를 이용하는 방법을 설명했다. docker를 통해 redis 이미지로 설치하고, 인텔리제이에서 redis 를 연결 후 직접 콘솔에서 명령어들을 익혀보았다.이번에는 SpringBoot 어떻게 Redis 를 활용하는지 살펴보자.redis 관련

2024년 8월 7일
·
0개의 댓글
·
post-thumbnail

Redis 타입, 명령어

이번에는 Redis 의 기본적인 명령어에 대해 알아보자. Docker-compose.yml redis 설치는

2024년 8월 6일
·
0개의 댓글
·
post-thumbnail

In-Memory DB, redis

기존의 관계형 데이터베이스를 사용하는 주된 이유는 영속성 데이터, 즉 파일시스템에 데이터를 저장함으로서 서비스가 종료되어도 유지되는 데이터를 위해서이다.하지만, 많은 서비스가 일시적인 데이터를 저장해야 하는 상황을 필요로 한다. (ex> 로그인 정보, 장바구니 등등)이

2024년 8월 5일
·
0개의 댓글
·
post-thumbnail

MSA - Service Discovery

서비스 디스커버리 서비스 디스커버리는 마이크로서비스 아키텍처에서 각 서비스의 위치를 동적으로 관리하고 찾아주는 기능으로 MSA 에서는 필수적인 기능이다. 각 서비스는 등록 서버에 자신의 위치를 등록하고, 다른 서비스는 이를 조회하여 통신 주요기능 서비스 등록,

2024년 8월 1일
·
1개의 댓글
·
post-thumbnail

MSA - Spring Cloud 에 대해 알아보기

하나의 애플리케이션을 여러 개의 독립적인 서비스로 분리하여 개발, 배포, 유지보수를 용이하게 하는 소프트웨어 아키텍처 스타일각 서비스는 특정 비즈니스 기능을 수행하며, 서로 독립적으로 배포되고 확장될 수 있음서비스 간의 통신은 주로 HTTP/HTTPS, 메시지 큐 등을

2024년 7월 31일
·
1개의 댓글
·
post-thumbnail

[SpringBoot] Security Config permitAll()과 jwt 인증

Spring Security를 통한 회원 인증/인가 부분에서 생기는 문제점과 해결책 | SpringBoot3.x, Spring Security 6 이상

2024년 3월 14일
·
0개의 댓글
·
post-thumbnail

구름톤 챌린지 Week-2 / 7일차 미션

7일차 미션 - 주변 구름 탐색하기 행렬이 주어지고 모든 index 에 대해 탐색하는, 전형적인 완전탐색 문제이다. 평소에 코딩테스트에 관심이 많았던 사람이라면 손쉽게 풀었을 거라 생각한다.그렇게 생각하자마자 정답율이 이미 98퍼센트... 핵심 아이디어 사실 그

2023년 8월 22일
·
0개의 댓글
·