본문 바로가기
반응형

전체 글90

[springboot] 쿠키, 웹 스토리지(LocalStorage, SessionStorage) 쿠키(Cookie), 로컬 스토리지(LocalStorage), 세션 스토리지(SessionStorage)는 모두 **웹 저장소(Web Storage)**의 일종으로, 클라이언트측(브라우저)에서 데이터를 저장하는 데 사용됩니다. 하지만 이 세 가지는 저장 방식, 용도, 특징 등에서 차이가 있습니다. 각각의 주요 차이점과 특징을 아래에서 비교해 보겠습니다.1. 쿠키 (Cookie)쿠키는 서버와 클라이언트 간에 HTTP 요청과 응답을 통해 전송되는 작은 데이터 조각입니다. 주로 세션 관리, 사용자 인증, 트래킹 등에 사용됩니다. 쿠키는 HTTP 헤더에 포함되어 서버로 전송되며, 클라이언트 측에 저장됩니다.주요 특징:서버와의 상호작용: 쿠키는 클라이언트에서 서버로 자동으로 전송됩니다. 매 HTTP 요청 시, 클.. 2025. 1. 14.
[springboot] RESTful API RESTful API는 REpresentational State Transfer (상태 전달 표현) 아키텍처 스타일을 기반으로 한 웹 API입니다. REST는 웹 서비스의 설계를 위한 아키텍처적 규칙과 제약을 따르며, HTTP 프로토콜을 통해 자원(Resource)을 정의하고, 이를 HTTP 메서드(GET, POST, PUT, DELETE 등)로 처리하는 방식입니다.RESTful API의 주요 특징자원(Resource): RESTful API에서는 "자원"이 기본적인 개념입니다. 자원은 웹에서 처리하고자 하는 대상이며, URL을 통해 식별됩니다. 예를 들어, "책"이라는 자원을 다룬다면, 그 책은 http://example.com/books/123와 같이 URL로 표현됩니다. 여기서 123은 특정 책의 .. 2025. 1. 14.
[springboot] 쿼리스트링(Query String)과 주소변수매핑(Path variable) Spring Boot에서 URL 매핑을 사용할 때, 쿼리스트링과 Path Variable (/book/{bookId})은 URL에서 데이터를 전달하는 두 가지 주요 방법입니다. 이들의 차이점과 사용 사례를 설명하겠습니다.1. 쿼리 스트링 (Query String)쿼리 스트링은 URL에서 "?" 기호 뒤에 key-value 쌍으로 데이터를 전달하는 방식입니다. 여러 개의 파라미터를 **"&"**로 구분하여 전달할 수 있습니다. 쿼리 스트링은 URL의 끝에 위치하며, 서버에서 해당 파라미터들을 추출하여 처리합니다.예시:http://example.com/books?title=java&author=John위 URL에서 쿼리 스트링은 ?title=java&author=John 부분입니다. 이 URL은 title과.. 2025. 1. 14.
[네트워크] 인증 방식 (쿠키, 세션, 토큰 JWT) 및 로그인 세션ID 저장 과정 인증 / 인가1. 인증 (Authentication):인증은 해당 유저가 실제 유저인지 확인하는 과정예를 들어, 사용자가 로그인할 때 ID와 비밀번호를 입력하면 시스템은 이를 확인하여 사용자가 누구인지 확인합니다.인증 방식은 비밀번호, 생체 인식, OTP(일회용 비밀번호), 보안 토큰 등 다양합니다.즉, **"누구냐?"**라는 질문에 답하는 과정입니다.2. 인가 (Authorization):인가는 인증된 유저가 어떤 자원에 접근할 수 있는지, 어떤 행동을 할 수 있는지를 결정하는 과정입니다.예를 들어, 로그인한 사용자가 특정 파일을 열거나 수정할 수 있는 권한을 갖고 있는지 확인합니다.즉, **"이 사용자는 무엇을 할 수 있느냐?"**라는 질문에 답하는 과정입니다.정리인증: 사용자의 신원을 확인하는 과정.. 2025. 1. 13.
[springboot] DI(Dependency injection) DI(Dependency injection)는 클래스가 자신이 필요한 의존 객체(즉, 다른 클래스의 인스턴스)를 스스로 생성하지 않고 외부에서 제공받는 방식입니다. 즉, 의존성(다른 객체)을 주입해줌으로써 객체 간의 결합도를 낮추고, 객체의 생성과 관리의 책임을 외부에 위임합니다. 1. 스프링 부트에서 DI 설정 기본 구조스프링 부트에서 DI를 사용하는 과정은 크게 두 가지 주요 단계로 나눌 수 있습니다:컴포넌트 스캔: @Component 및 그 하위 어노테이션(@Service, @Repository, @Controller 등)을 사용하여 객체를 스프링 컨테이너에 등록.자동 의존성 주입: @Autowired를 사용하여 의존성 객체를 주입받기.스프링 부트는 기본적으로 어노테이션 기반의 설정을 사용하며, 자.. 2025. 1. 12.
[springboot] maven VS gradle Maven과 Gradle은 둘 다 빌드 도구로, Java 기반 애플리케이션을 포함한 다양한 프로젝트에서 의존성 관리, 빌드 자동화, 배포, 테스트 등을 처리하는 데 사용됩니다. 하지만 두 도구는 설계 철학, 사용법, 성능 등에 있어 몇 가지 중요한 차이점이 있습니다.아래에서 Maven과 Gradle의 주요 차이점들을 비교하겠습니다.1. 빌드 스크립트 언어Maven:XML을 사용하여 빌드 설정을 정의합니다.pom.xml 파일을 통해 의존성, 플러그인, 빌드 구성 등을 설정합니다.XML은 선언적인 방식이지만 다소 장황하고 읽기 어려운 경우가 있습니다.예시 (pom.xml): org.springframework spring-webmvc 5.3.0 Gradle:**DSL (Domain Specific Lang.. 2025. 1. 12.
반응형