본문 바로가기

전체 글21

Spring Bean이란? 생성과 생명주기 정리 왜 Spring Bean을 알아야 할까?Spring의 핵심은 객체를 대신 관리해준다는 점입니다.개발자는 객체 생성, 의존성 관리, 초기화 등을 신경 쓰지 않고,핵심 비즈니스 로직에 집중할 수 있습니다. 이 모든 객체 관리를 담당하는 것이 바로 Spring Bean입니다.즉, Bean을 이해해야 Spring을 제대로 활용할 수 있습니다. Spring Bean이란?Spring Bean이란 Spring IoC 컨테이너가 관리하는 자바 객체를 말합니다.개발자가 직접 생성하지 않고, Spring이 객체를 만들고 생명주기를 관리합니다.Bean은 주로 서비스 클래스, DAO, 리포지토리, 설정 클래스 등으로 사용됩니다.@Component, @Service, @Repository, @Controller 등의 어노테이션.. 2025. 6. 22.
의존성 주입이란? DI(Dependency Injection)에 대하여 DI란 무엇인가?DI(Dependency Injection, 의존성 주입)는 객체 간의 의존 관계를 Spring 프레임워크가 대신 관리해주는 기능입니다.개발자가 직접 객체를 생성하고 주입하는 방식이 아니라,Spring이 필요한 객체를 자동으로 주입해줌으로써 코드의 결합도를 낮추고 유지보수를 쉽게 만들어줍니다. DI가 필요한 이유예를 들어, 어떤 클래스 A가 클래스 B를 사용한다고 해보겠습니다.public class A { private B b = new B(); // 직접 생성}이 방식은 A가 B에 강하게 의존하고 있어서, B의 구현이 바뀌면 A도 함께 수정해야 합니다.테스트 시에도 B를 대체하기 어려워 유연성이 떨어집니다. Spring의 DI 방식으로 설계하면public class A { p.. 2025. 6. 22.
로그인 유지의 핵심 기술, 세션(Session) 세션(Session)의 개념세션(Session) 은 사용자가 웹사이트에 접속해 있는 동안 서버가 사용자 정보를 기억하도록 해주는 기술입니다.HTTP는 기본적으로 상태를 유지하지 않는(stateless) 프로토콜이기 때문에, 사용자의 로그인 상태나 장바구니 등 상태 유지를 위해 세션이 사용됩니다.📌 쉽게 말해, 세션은 "서버가 사용자 상태를 기억하기 위한 수첩"입니다. 세션의 동작 원리세션은 쿠키와 함께 동작합니다. 서버는 사용자에게 고유한 세션 ID를 부여하고, 이를 쿠키로 브라우저에 저장시킵니다. 이후 사용자가 요청할 때마다 해당 세션 ID를 통해 상태 정보를 조회합니다. 🔁 세션 처리 흐름도사용자가 로그인 요청을 보냄서버가 세션 ID를 생성하고, 사용자 정보를 저장세션 ID를 응답 쿠키(Set-C.. 2025. 6. 21.
웹 쿠키란? 브라우저 쿠키, 세션, 캐시 차이까지 한 번에 정리 웹 브라우저는 어떻게 내 로그인 상태를 기억할까?자주 들어가는 페이지는 왜 더 빨리 열릴까?그 비밀은 바로 쿠키(Cookie), 세션(Session), 캐시(Cache)에 있습니다. 쿠키가 무엇일까 웹사이트가 사용자 정보를 저장하기 위해 웹 브라우저에 기록하는 작은 데이터 파일예를 들어, 네이버에 로그인한 상태를 유지하거나,쇼핑몰에서 장바구니에 담은 상품을 기억하는 것도 모두 쿠키 덕분입니다. 쿠키의 실제 사용 예시 🔑자동 로그인 유지구글, 네이버 등 포털사이트의 자동 로그인 기능 🛒 쇼핑몰 장바구니쿠팡, 11번가 등 상품을 담고 나중에 다시 접속해도 그대로 유지되는 기능 ⚙️ 다크모드 / 언어 설정티스토리, 유튜브 등 테마 설정 기억하기 📺 맞춤형 광고 노출특정 쇼핑몰에서 본 제품의 광고가 다른 .. 2025. 6. 20.