전체 글 9

[Spring MVC] HandlerAdapter 의 구현체는 어떤것들이 있을까?

지난 글에서는 왜 Spring MVC에 HandlerAdapter라는 개념이 필요한가를 살펴봤다.이번 글에서는 한 발짝 더 들어가, 실제로 존재하는 HandlerAdapter 구현체들은 어떤 것들이 있고, 각각 어떤 차이가 있는지 정리해보자.HandlerAdapter 인터페이스의 기본 역할다시 한 번 확인하자.모든 HandlerAdapter는 HandlerAdapter 인터페이스를 구현해야 하며, 핵심 메소드는 두 가지다.public interface HandlerAdapter { /** * Whether this {@code HandlerAdapter} supports the given {@code handler}. * @param handler the handler object to check ..

Spring 2025.10.07

[Spring MVC] HandlerAdapter 가 존재하는 이유는 뭘까?

Spring MVC의 요청 처리 과정을 살펴보면, 흔히 이렇게 설명된다.사용자의 요청이 들어오면 DispatcherServlet이 이를 가장 먼저 받는다. (Front Controller)HandlerMapping이 요청 URL에 맞는 핸들러를 찾아낸다.HandlerAdapter가 선택된 핸들러를 실행할 수 있는 준비를 한다. (핸들러 타입에 따라 실행 방법이 달라질 수 있음)준비된 핸들러가 실제 컨트롤러 메서드로 호출된다.컨트롤러 실행 결과는 ModelAndView 형태로 DispatcherServlet에 반환된다이후 뷰 렌더링 단계(ViewResolver, View)로 넘어가 최종 응답을 사용자에게 돌려준다.문득 이런 의문이 생겼다.HandlerMapping에서 이미 컨트롤러를 찾았는데, 그냥 바로 ..

Spring 2025.10.03

[회고] 카테부 1~2 주차 회고입니다.. 근데 이제 반성을 곁들인

카테부 풀스택 과정을 시작한지 벌써 2주가 흘렀다. 따라만 갔는데 월화수목금 월화수목금 쏜살같이 흘러갔다. (아니 사실 못따라갔다 ..) 2주면 아직 맛도 안봤을텐데 회고를? 라고 생각 할 수 있겠지만, 지난 2주 동안 제대로 학습하는 법을 많이 배웠다고 느꼈다. 2주 전까지의 내 모습 .. 1. 해야되는 공부가 아니라 하고 싶은 공부만 하고 있었다. 그렇다. 사실 공부하고 새롭게 배워야할 내용들이 엄청나게 많다는걸 머리로는 알고 있었지만내가 잘모르고 부족하다는 걸 진심으로 인정하는게 어려웠던 것 같다. 그리고 이것보다 더 중요한 부분을 느꼈는데 바로 이것이다. 2. 설명하지 못하면 제대로 이해한게 아니다. 내가 안다고 착각하는 부분이 너무 많은거였다. 어떤 개념이나 동작과정에 대해 질문을 받았을 ..

회고 2025.09.21

[SWEA] 나무 높이 (D2) 풀이 (Java)

PASS 받은 정답코드는 맨 밑에 있습니다. 시간 : 50개 테스트케이스를 합쳐서 C/C++의 경우 1초 / Java의 경우 1초메모리 : 힙, 정적 메모리 합쳐서 256MB 이내, 스택 메모리 1MB 이내 [문제]N개의 나무가 있다. 초기의 각 나무의 키가 주어진다. 하루에 한 나무에 물을 줄 수 있다. 첫 날은 물을 준 나무의 키가 1 자라고, 둘째 날은 물을 준 나무의 키가 2 자라고, 셋째 날은 물을 준 나무의 키가 1 자라는 식으로, 홀수 번째 날은 키가 1 자라고 짝수 번째 날은 키가 2 자란다. 모든 나무의 키가 처음에 가장 키가 컸던 나무와 같아지도록 할 수 있는 최소 날짜 수를 계산하라. 어떤 날에는 물을 주는 것을 하지 않을 수도 있다. 예를 들어 나무가 2그루이고 각각의 높이가 4와 ..

[JPA] 영속성 컨텍스트에 대해 알아보자

잘못된 정보를 발견하셨다면 지적과 수정요청 언제나 환영입니다 감사합니다 ! ! ! JPA/Hibernate 를 학습하다보면 영속성 컨텍스트(Persistence Context) 가 등장한다. 이것에 대해 알아보자. 0. 영속성 컨텍스트란 ? 먼저, 영속성 컨텍스트에 대한 정의는 java docs 의 Interface EntityManager 문서에서 찾아볼 수 있다.음 ... 완벽하게 이해했어! 우선 드래그한 부분을 한글로 해석해보자.영속성 컨텍스트는 영속(Persistent) 상태의 엔티티들이 관리되는 집합 공간이다. 영속성 컨텍스트 내에서는 각 엔티티의 고유한 식별자에 대해 단 하나의 엔티티 인스턴스만이 존재하며, 이 엔티티 인스턴스들과 그 생명 주기(Lifecycle)가 관리된다. 위 설명을 통해..

JPA 2025.08.22

[후기] 카카오테크 부트캠프 풀스택 지원&면접 합격후기

코테 문제 / 면접 질문에 대해서는 직접적으로 언급하기 어려운 점 양해해주세요. 큰 거 왔냐 ... ?0. 지원한 계기카카오테크 부트캠프(카부캠) 3기 지원이 열렸다. 3기에는 풀스택 / AI 실무개발 / 클라우드 네이티브 이렇게 총 3가지 과정이 진행된다.일단 AI 실무개발 쪽은 기술스택과 희망진로가 아니었어서 PASS..풀스택과 클라우드 네이티브 중에 고민하면 되는 부분이었는데, 얼마 전에 작성한 학기 프로젝트 회고에서 풀스택 개발지식의 필요성을 크게 느낀터라 길게 고민하지 않고 풀스택 과정을 지원하기로 했다. 그것 말고도 팀프로젝트 경험이 너무 부족한 점과, 우수한 동료들과 프로젝트를 진행하면서 많이 배우고 싶은 마음이 컸기 때문에의 이유로 지원하게 되었다. (회고 내용은 아래 글을 참고해주세요.)..

경험 2025.08.04

[Java] 자바에서 생성자를 호출할 때 생기는 일

잘못된 정보를 발견하셨다면 지적과 수정요청 언제나 환영입니다 감사합니다 ! ! ! 문득 우리가 항상 사용하고 있는 new 연산자를 통해 생성자를 호출했을때선언한 참조변수와 생성된 인스턴스가 어디에 저장되고 어떤식으로 만들어지는지 궁금했다. 약간 의식의 흐름 느낌이긴 하지만, 궁금해서 알아본 김에 글로 정리해보고자 한다. 0. 이 과정에 관여되는 메모리 영역들 JVM 은 프로그램을 실행하기 위해 메모리를 여러 영역으로 나누어 사용하는데, new 연산자를 통한 생성자의 실행 과정에 관여되는 메모리 영역들 중심으로 알아보자 - 스택(Stack) 영역스택 영역에는 메소드의 호출 정보, 지역 변수, 기본형 변수가 저장된다.각 스레드마다 별도로 스택이 생성되고, 각 스택마다 메소드가 호출되면 스택 프레임(Stac..

Java 2025.07.26

[회고] 쉽지않았던 4-1 학기를 마치며 (feat. 지옥의 첫 팀프로젝트)

컴퓨터공학 전공을 선택하고 처음으로 팀프로젝트를 경험했다.지난 학기에도 팀프로젝트에 참여하긴 했었으나, 여러가지 이유로 인해 찐하게 팀프로젝트를 경험하지는 못했다는 개인적인 느낌이 있다. 이번 학기에 진행한 종합설계 팀프로젝트 경험을 중심으로, 협업과 관련하여 느낀 부분들을 적어보고자 한다.0. 배경 팀프로젝트를 진행하는 종합설계 과목은 마지막 학기의 졸업작품으로 이어지며, 졸작의 프로토타입을 만드는게 목표인 프로젝트 과목이다. 사실 프로토타입이라고 말은 했지만, 거의 완성품을 만들고 졸작때는 약간의 기능만 추가하면 통과가 되는 시스템이므로 이번 학기 프로젝트에 힘을 많이 줄 수 밖에없는 형태이다. 프로젝트 배경과 진행을 짧게 소개하자면, 프로젝트 주제 : 화장품 쇼핑몰내용 : 기능 구성이 { 1) 관..

회고 2025.07.24

[후기] 네이버 부스트캠프 웹모바일 9기 베이직 과정 수료 후기

🧨 베이직 과정을 신청한 계기 누군가 나에게 이렇게 묻는다." 컴퓨터공학과? 어떤 개발할거야? "그럼 나는 이렇게 대답한다." 몰라요 나는 아무것도 몰라요 ~ " 방학을 앞두고 뭔가 해야한다는 압박감이 들었다. 하지만 무엇부터 어떻게 공부해야할지 모르는 나에게 무언가가 보였다. "네이버 부스트캠프 웹모바일 9기 모집". 그렇다. 어릴적 주니어네이버 부터 현재는 네이버페이까지 ... 내 인생과 쭉 함께한 바로 그 기업 네이버였다. 부스트캠프라는 이름은 나에게 성장하고 싶은 욕구를 한층 끌어올리기 충분했고 웹모바일 과정을 곧바로 지원하게 되었다. 베이직 과정은 이번 9기에 신설된 과정이었다. 취지는 자기 주도적으로 미션을 수행해 나가면서 겪는 경험들을 바탕으로, 프로그래밍으로 문제를 해결하는 것이 무엇인..

경험 2024.07.11