profile
백엔드 개발자 지망 대학생
태그 목록
전체보기 (68)Spring(24)Java(19)db(10)kotlin(9)Spring boot(7)JPA(6)UMC(4)http(3)sql(3)트랜잭션(3)백준(3)cursor(3)docker(3)Springboot(2)쉽게배우는자바프로그래밍(2)정답(2)transaction(2)mysql(2)ORM(2)stack(2)스프링 부트(2)transactional(2)Cache(2)자바(2)연습문제(2)프로그래머스(2)android(2)aws(2)umc 8기(1)LLM(1)서블릿 컨테이너 초기화(1)flush(1)API(1)api 설계(1)URI(1)sealed class(1)영속(1)rds(1)server(1)Thread(1)queue(1)배포(1)S3(1)Datasource(1)image(1)스택 트레이스(1)도커 컨테이너(1)코딩테스트(1)coroutine(1)MapsId(1)DispatchServlet(1)lock(1)Index(1)인덱스(1)도메인(1)route53(1)UMC지원(1)redis(1)DP(1)Slf4j(1)톰캣(1)UMC면접(1)UMC 서버(1)MVC(1)umc 시니어(1)UMC후기(1)팰린드롬??(1)BaseEntity(1)H2(1)PostgreSQL(1)Spirng(1)micrometer(1)입출력 처리(1)입출력 스트림(1)entity(1)CertBot(1)sql 게임(1)Backend(1)내장 톰캣(1)query(1)COLUMN(1)CI/CD(1)ec2(1)우종정(1)https(1)entity manager(1)Nginx(1)UMC 시니어 미션(1)비영속(1)soft delete(1)트랜잭션 동기화(1)umc 스프링(1)시니어 미션(1)코테(1)Paging(1)캐시(1)캐싱(1)oom(1)docker run(1)aop(1)github actions(1)서블릿 컨테이너(1)14장(1)UMC합격(1)UNIVERSITY_MAKEUS_CHALLENGE(1)war(1)TestContainers(1)BFS(1)정규형(1)Control URI(1)UMC합격후기(1)커넥션 풀(1)UMC8기(1)jetpack compose(1)Better stack(1)그리디(1)erd(1)logging(1)스레드 동기화(1)트랜잭션 AOP(1)300(1)spring batch(1)페이지네이션(1)umc spring(1)hashCode()(1)redirect(1)AfterCommit(1)Flask(1)가비아(1)slice(1)구현(1)Grafana(1)unique(1)Database(1)도커 이미지(1)DFS(1)Railway(1)큐(1)Trasaction(1)정규화(1)13장(1)독서(1)영속성 컨텍스트(1)JDBC(1)equals(1)싱글톤(1)spring boot actuator(1)준영속(1)lazy 레이아웃(1)DTO(1)exception(1)예외(1)container(1)BigInteger(1)로깅(1)스레드(1)레디스(1)Gemini(1)jar(1)page(1)kotlin-logging(1)UMC8기합격(1)백엔드(1)
post-thumbnail

[Spring] 스프링 전역 예외처리

프로젝트를 많이 해보면서, 예외처리의 구조나 가장 좋은 예외처리? 방식에 대해서 연구해본 적이 없고 그냥 전역 예외처리를 최대한 해보는 것 말고는 없었던 것 같아서 정리해본 글이다.조금 두서없음주의..throw하는 순간 Throwable 객체가 생기고, 네이티브 메서드

2026년 9월 22일
·
1개의 댓글
·

[Spring] 스프링 기본4 - 의존관계 자동 주입

생성자 주입수정자 주입(setter 주입)필드 주입일반 메서드 주입생성자를 통해서만, 의존관계가 주입되며 외부에서 수정할 수 있는 방법이 없다. 생성자 호출시점에 딱 한번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용된다. 생성자가 한개만 있으면 @Autowi

2026년 9월 17일
·
1개의 댓글
·
post-thumbnail

[Spring] 스프링 기본3 - 컴포넌트 스캔

@Bean으로 하나하나 설정 정보 등록하면 번거롭기 때문에, 반복을 줄이는 것이 필요하다. 그래서 스프링은 이러한 설정 정보 없이도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔이라는 기능을 제공한다. 의존관계를 자동으로 주입해주는 @Authowired 기능도 제공한다.

2026년 9월 17일
·
1개의 댓글
·

[Spring] 스프링 기본2 - 싱글톤 컨테이너

웹 애플리케이션과 싱글톤 memberService라는게 있는데, 이걸 호출할 때마다 객체를 생성하도록 AppConfig에 요청하게 되면 매번 다른 객체를 생성하게 된다. 내부에 memberRepository도 생성자에 담고 있다면 더 생성된다. 그러면 메모리 낭비가

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

[회고] 독서 기록 서비스 NOOK 회고록

이 프로젝트는 UMC 8기에서 시작되었다.처음에 8기를 하면서 UMC SpringBoot 시니어로 참여했다. 'NOOK'에 지원한 이유는 디자인이 예뻐서였다! 목표가 캐릭터가 이쁘고, 분위기있는 디자인이 있는 (나는 백엔드지만) 프로젝트를 하는게 8기 목표였다. 백엔드

2026년 9월 8일
·
3개의 댓글
·
post-thumbnail

[Spring] 스프링 기본1 - IoC,DI, 스프링 컨테이너와 스프링 빈

제어의 역전이란 외부에서 프로그램 제어 흐름을 관리하는 것이다. AppConfig가 프로그램의 제어권을 가져간다. 즉 서비스의 구현 객체는 자신의 로직을 실행하는 역할만 담당하고, 제어 흐름은 AppConfig가 가지고 있다. 구현 객체는 필요한 인터페이스를 호출하지만

2026년 9월 3일
·
1개의 댓글
·

[Server] HTTP 캐시

원 서버가 미국에 있을 경우 느리기 때문에 한국 어딘가에 프록시 캐시 서버를 두고, 해당 서버를 거쳐서 올 수 있도록 한다. 그러면 웹브라우저가 프록시 캐시 서버에 접근하게 된다. 응답 시간이 훨씬 빨라진다.프록시 캐시는 public, 로컬 캐시는 privateCach

2026년 8월 25일
·
0개의 댓글
·

[Server] HTTP 지식 리마인드

field-name은 대소문자 구분이 없다.HTTP 전송에 필요한 모든 부가정보다.메시지 바디 내용, 바디 크기, 요청 브라우저 정보, 캐시 관리 정보 등등..필요 시 임의의 헤더 추가가 가능하다. Content-Type: 표현 데이터의 형식 설명, 미디어 타입,문자

2026년 8월 25일
·
0개의 댓글
·

[Server] HTTP 3XX - 리다이렉션

요청 완료하기 위해 클라이언트 프로그램(웹브라우저)의 추가 조치가 필요할 때 보내는 상태코드이다.웹 브라우저는 3xx 응답의 결과에 Location 헤더가 있으면 Location 위치로 자동 이동한다.요청을 하고 /event라는 엔드포인트로 요청했는데, 이 엔드포인트가

2026년 8월 25일
·
0개의 댓글
·

[Java/Kotlin] equals()와 hashCode()

equals() : 두 객체 비교, true면 hashCode()도 같아야 함객체 주소가 같으면 True== 는 값만 판단 가능, 같은 객체인지 판단하려면 equals 사용 필수String 객체에서는 주소가 같으면 True, 오버라이딩된 equals 함수를 사용하기 때

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

[Server] Spring Boot 메트릭 수집 모니터링 구축 (Railway + Better Stack OTLP push)

이번에 모니터링을 평소 하던 AWS가 아닌 Railway와 연결해서 하면서, 어떤 모니터링 방식으로 메트릭 수집을 하면 좋을지 생각해보게 되었다.메트릭은 매 이벤트를 전송하는 게 아니라, 애플리케이션 메모리 안에서 숫자를 계속 누적하거나 갱신하다가 일정 주기마다 스냅샷

2026년 7월 6일
·
0개의 댓글
·
post-thumbnail

[회고] 다사다난 취준생의 상반기 회고록

상반기 시간이 너무 빨리 흘러간 것 같기도 하고 .. 이래저래 많은 일이 있었어서 상반기 회고록을 작성했다.!가장 큰 사건 위주로 보면UMC 9기 수료 및 데모데이 새로운 프로젝트 백엔드 합류, 8월 런칭 예정UMC 스프링 파트장, 안드로이드 챌린저로 스터디 진행개발동

2026년 6월 30일
·
4개의 댓글
·

[Spring/Kotlin] Sealed Class로 DTO 생성하기

sealed class는 상속 가능한 범위를 같은 파일로 제한하는 클래스다.컴파일러가 모든 하위 타입을 알고 있기 때문에, when 분기에서 else 없이도 모든 케이스를 강제 처리할 수 있다.나중에 Triangle을 추가하면, 처리하지 않은 when에서 즉시 컴파일

2026년 6월 21일
·
1개의 댓글
·

[Spring] 외부 LLM API의 트랜잭션 문제

증상 생성/수정 후 Gemini 기반 패턴 분석을 비동기로 갱신하고 있었다.기존 흐름은 다음과 같았다.이 구조에는 두 가지 문제가 있었다.Gemini 호출이 DB 트랜잭션 안에서 실행된다.오래 걸린 이전 비동기 작업이 나중에 끝나면서 최신 분석 결과를 덮어쓸 수 있다.

2026년 6월 20일
·
0개의 댓글
·

[DB] TestContainers 도입기

이번에 테스트 환경을 보다가 찝찝한 지점이 있었다.운영은 PostgreSQL을 쓰고 있는데, 테스트는 H2의 PostgreSQL mode로 돌고 있었다.처음에는 PostgreSQL mode면 어느 정도 비슷하지 않나?라고 생각할 수 있다.그런데 Repository 테스

2026년 6월 15일
·
0개의 댓글
·

[Spring] Page, Slice, Cursor Pagination 언제 써야 할지?

커서 페이징을 다시 보다가 갑자기 헷갈렸다.PageRequest.of(0, size)를 쓰면 offset이 0이니까 cursor 기반 조회에서 사실상 limit size처럼 동작하는 것 아닌가?그럼 Limit.of(size)랑 뭐가 다른가?또 Slice는 hasNext

2026년 6월 14일
·
0개의 댓글
·

[Spring] MapsId로 일대일 매핑하기

User마다 한개씩만 생성되어야 하는 엔티티들이 있다. 기존에는 기본키를 따로 두고 user를 FK로 두는 방식으로 진행했다. 그렇지만 기본키를 많이 안쓰고 findByUserId 식의 메서드를 많이 사용한다면 컬럼 방비라고 생각하여 전략을 변경해보게 되었다. 기존 방

2026년 6월 7일
·
0개의 댓글
·

[Kotlin/Spring] Kotlin 환경에서 효율적으로 로그 작성

자바 스프링 -> 코틀린 스프링으로 갈아타면서, Slf4j을 당연하게 사용했는데 코틀린은 롬북을 잘 사용하지 않기도 하고, 이참에 다른 로거와의 성능을 비교해서 써보자 하고 다른 로그 작성 방법을 찾아보게 되었다. 로그 수준에 따라서 로그가 남겨진다. 즉 logger.

2026년 6월 7일
·
0개의 댓글
·

[Android] Jetpack Compose 에서 Lazy 레이아웃 사용하기

UMC 안드로이드 8주차 미션 블로그 챌린지입니다.RecyclerView, Adapter, ViewHolder, 각 항목의 레이아웃 XML이 필요하다. 즉 XML파일, 코틀린 파일 분리해서 관리해야 한다. LazyColumn, LazyRow로 전부 대체 가능Compos

2026년 5월 19일
·
0개의 댓글
·
post-thumbnail

[Kotlin] Kotlin 기초 - 변수,타입,연산자

자바 개발자를 위한 코틀린 입문해당 강의를 듣고 작성하였다. 안드로이드,스프링에서 코틀린을 많이 사용하게 되었는데, 자바랑 비슷한 것 같다가도 너무 다른 것 같은데 지식 없이 사용하자니 어떤 실수를 하는지도 모르는 것 같아서 빠르게 기초를 공부하고자 한다. var, v

2026년 5월 17일
·
0개의 댓글
·