후니 님의 블로그
close
프로필 사진

후니 님의 블로그

github: @https://github.com/jaehoon0321

  • 분류 전체보기 (50) N
    • Spring (0)
      • spring 심화 (0)
      • spring 숙련 (7)
      • spring 입문 (10)
    • Spring Boot (1)
    • GIT (1)
      • CI CD (1)
    • Docker (0)
    • AI (2)
    • 인메모리 저장소 ,Redis 기초 (2)
    • 스파르타 심화 과정 (4)
    • NCP (0)
    • AWS (0)
    • MSA (9) N
    • 프로젝트 (1)
    • SSAC프로젝트 (2)
    • MSA프로젝트(whereIsMyParcel) (2)
    • 알고리즘 (5)
  • 홈
  • Github
JPA Entity 연관 관계

JPA Entity 연관 관계

JPA / Hibernate Architecture💡 체크: 객체는 '참조'를 통해 관계를 맺고, DB 테이블은 '외래 키(FK)'를 통해 관계를 맺는다.1. 연관 관계의 4가지 유형@OneToOne (1:1): 회원이 하나의 프로필을 가지는 것과 같은 관계@ManyToOne (N:1): 여러 개의 게시글이 하나의 게시판에 속하는 관계입니다. 실무에서 가장 많이 쓰이는 구조@OneToMany (1:N): 하나의 부서에 여러 사원이 있는 관계입니다. 보통 N:1의 반대 방향@ManyToMany (N:M): 학생과 과목의 관계입니다. 실무에서는 사용을 지양하고, 중간 엔티티를 두어 1:N - N:1로 풀어내는 것이 정석입니다.2. 단방향 vs 양방향, 그리고 '주인'객체는 한 쪽만 참조하면 단방향, 양쪽..

  • format_list_bulleted Spring/spring 숙련
  • · 2026. 4. 10.
RestTemplate

RestTemplate

Spring Boot / HTTP Client서버 간 통신의 정석: RestTemplate 완벽 가이드GET, POST부터 만능 도구 exchange 정리💡필수 개념: 현대의 백엔드는 혼자 일하지 않습니다. 외부 API(카카오 결제, 기상청 데이터 등)를 호출하거나 다른 마이크로서비스와 통신해야 한다 스프링에서 가장 대중적으로 사용하는 동기식 HTTP 클라이언트가 RestTemplate1. RestTemplate: 서버를 위한 브라우저우리가 브라우저를 통해 웹사이트에 접속하듯, 서버가 다른 서버에 HTTP 요청을 보낼 때 사용하는 도구.동기(Blocking) 방식으로 동작동기 방식이란? -> 앞선 작업이 끝날 때 까지 다음 작업이 대기해야 하는 통신 방식을 의미 함.-> 요청을 보낸 클라이언트는 서버로..

  • format_list_bulleted Spring/spring 숙련
  • · 2026. 4. 9.
Vaildation

Vaildation

Spring Boot / Validation데이터 검증(Validation)Bean Validation💡 핵심 요약: 데이터 검증은 서버의 첫 번째 방어선입니다. 컨트롤러에서 일일이 if(data == null)을 작성하는 대신, 표준화된 Bean Validation을 통해 코드를 깔끔하게 관리할 수 있다.1. if문 대신 애너테이션으로 자동화과거에는 들어오는 데이터가 유효한지 확인하기 위해 서비스 로직 절반이 검증 코드였다.하지만 스프링은 애너테이션 하나로 이 과정을 자동화해주는것이다 자주 쓰는 검증 애너테이션@NotBlank: null이 아니고, 최소 한 글자 이상의 공백이 아닌 문자가 포함되어야 함.@Size(min=x, max=y): 문자열, 컬렉션 등의 크기를 제한함.@Email: 이메일 형식..

  • format_list_bulleted Spring/spring 숙련
  • · 2026. 4. 9.
Session/Cookie/Filter/Listener

Session/Cookie/Filter/Listener

무상태(stateless)에서 기억하는 방법HTTP는 기본적으로 무상태이므로 과거의 요청기록을 알 수 없다. HTTP가 무상태를 선택한 가장 큰 이유는 적은 자원으로 다수의 요청(Request)를 처리할 수 있기 때문이다. 하지만 과거의 방문 기록을 추적하는 기법이 필요하게 되었고 이 기법들을 세션 트랙킹(session tracking) 이라고 한다.Servlet / Web DevelopmentHTTP 무상태(Stateless)를 극복하는 기술: 쿠키, 세션, 필터, 리스너서버가 클라이언트를 기억하고 관리하는 방법💡 핵심 개념: HTTP는 무상태(Stateless) 프로토콜입니다. 적은 자원으로 많은 요청을 처리할 수 있는 장점이 있지만, 과거 요청을 기억하지 못한다는 단점도 있죠. 이를 해결하기 위..

  • format_list_bulleted Spring/spring 숙련
  • · 2026. 4. 9.
쿠키(Cookie)와 세션(Session)

쿠키(Cookie)와 세션(Session)

Spring Boot 💡 시작하며: HTTP 프로토콜은 Stateless(무상태) 특징을 가지고 있어, 서버는 방금 전 요청을 보낸 사람이 누구인지 기억하지 못합니다. 우리가 로그인 후 페이지를 이동해도 로그아웃되지 않는 이유는 바로 '쿠키'와 '세션' 덕분입니다.1. 쿠키 (Cookie): 브라우저에 저장되는 작은 정보쿠키는 서버가 클라이언트(브라우저)에게 보내는 작은 텍스트 파일입니다. 브라우저는 이 정보를 보관하고 있다가, 다음에 같은 서버에 요청을 보낼 때마다 쿠키를 함께 담아서 보냅니다.저장 위치: 클라이언트(웹 브라우저)동작 방식: 서버가 응답 헤더에 Set-Cookie를 담아 보내면, 브라우저가 이를 저장합니다.단점: 보안에 취약합니다. 클라이언트 측에서 수정이 가능하고, 네트워크를 통해 ..

  • format_list_bulleted Spring/spring 숙련
  • · 2026. 4. 9.
인증(Authentication) vs 인가(Authorization)

인증(Authentication) vs 인가(Authorization)

Spring Boot / Security💡 한 줄 정리: 인증은 '누구인지' '너 누구야?' 확인하는 것이고, 인가는 확인된 사용자가 '무엇을 할 수 있는지' 확인하는 것1. 인증 (Authentication): 너 누구니?인증은 해당 서비스에 접근하려는 사용자가 본인이 맞는지 신원을 확인하는 과정입니다. 가장 쉬운 예로 웹사이트에 로그인하는 행위가 바로 인증입니다.목적: 시스템을 사용하는 주체의 신원을 증명함수단: 아이디/비밀번호, 생체 인식, 일회용 비밀번호(OTP) 등비유: 호텔에 도착해 신분증을 제시하고 본인임을 확인받는 과정2. 인가 (Authorization): 이건 해도 돼!인증을 통해 누구인지 확인되었다면, 이제 그 사용자가 어떤 권한을 가지고 있는지 확인하는 과정이 인가입니다. 사용자가..

  • format_list_bulleted Spring/spring 숙련
  • · 2026. 4. 9.
  • navigate_before
  • 1
  • 2
  • 3
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (50) N
    • Spring (0)
      • spring 심화 (0)
      • spring 숙련 (7)
      • spring 입문 (10)
    • Spring Boot (1)
    • GIT (1)
      • CI CD (1)
    • Docker (0)
    • AI (2)
    • 인메모리 저장소 ,Redis 기초 (2)
    • 스파르타 심화 과정 (4)
    • NCP (0)
    • AWS (0)
    • MSA (9) N
    • 프로젝트 (1)
    • SSAC프로젝트 (2)
    • MSA프로젝트(whereIsMyParcel) (2)
    • 알고리즘 (5)
인기 글
전체 방문자
오늘
어제
Copyright © 0321ljh 모든 권리 보유.
SKIN: Copyright © 쭈미로운 생활 All rights reserved. Designed by JJuum.
and Current skin "dev-roo" is modified by Jin.

티스토리툴바