Archive_99
close
프로필 사진

Archive_99

github: @denev6

  • 분류 전체보기 (17)
    • 대외활동 (2)
    • 백엔드 (15)
  • 홈
  • 태그

[Spring Boot / 백엔드] AWS로 프로젝트 배포하기 - VPC, EC2, GitHub Actions

백엔드 개발을 공부하다 보면 기능을 구현하는 것만큼이나 만든 서비스를 실제로 어디에서 실행할지도 중요합니다.Spring Boot 프로젝트를 실행하면 localhost:8080에서 잘 동작하니까“이제 완성된 거 아닌가?”라고 생각할 수도 있습니다. 그런데 곰곰이 생각해보면내 컴퓨터에서만 실행되는 프로젝트는 아직 혼자만 볼 수 있는 프로그램에 가깝습니다.다른 사람이 접속할 수 있게 하려면 서버가 필요하고,그 서버가 인터넷과 어떻게 연결되는지도 알아야 하고,코드를 수정할 때마다 매번 직접 올리는 대신 자동으로 배포되는 흐름도 필요하게 됩니다. 그래서 이번 글에서는 클라우드 컴퓨팅이 무엇인지,AWS에서 VPC와 EC2는 어떤 역할을 하는지,그리고 GitHub Actions를 이용해 어떻게 CI/CD 파이프라인을..

  • format_list_bulleted 백엔드
  • · 2026. 5. 31.

[Spring Boot / 백엔드] JWT와 OAuth 이해하기 - 토큰 기반 인증, 카카오 로그인

백엔드 개발을 공부하다 보면 로그인 기능을 구현하는 것에서 끝나지 않고,로그인 상태를 어떻게 유지할지,인증된 사용자를 어떻게 식별할지,소셜 로그인은 어떤 흐름으로 동작하는지까지 자연스럽게 궁금해지게 됩니다. 처음에는 저도 로그인이라고 하면 그냥 이메일과 비밀번호를 확인해서 통과시키는 기능 정도로만 생각했습니다.그런데 스프링 시큐리티를 공부하다 보니,로그인 이후의 인증 상태를 서버가 기억하는 방식도 있고,토큰을 이용해서 stateless하게 처리하는 방식도 있다는 점이 꽤 중요하게 느껴졌습니다. 특히 실제 서비스에서는모바일 앱, 프론트엔드와 백엔드 분리 구조, REST API 기반 환경이 많다 보니세션 기반 로그인보다 JWT 같은 토큰 기반 인증을 더 자주 보게 됩니다. 그래서 이번 글에서는 노션 내용을 ..

  • format_list_bulleted 백엔드
  • · 2026. 5. 25.

[Spring Boot / 백엔드] Spring Security 이해하기 - 구조, 인증/인가, 폼 로그인

백엔드 개발을 공부하다 보면 기능 구현만큼이나 사용자를 어떻게 보호할지를 고민하게 됩니다. 처음에는 저도 로그인 기능을 단순히“이메일과 비밀번호를 확인해서 맞으면 통과시키는 것” 정도로만 생각했습니다. 그런데 실제로 서비스를 만든다고 생각해보면 단순히 로그인만 되는 것으로 끝나지 않습니다. 누가 누구인지 확인하는 과정은 어떻게 처리할지,로그인한 사용자가 어떤 API까지 접근할 수 있는지 어떻게 구분할지,인증되지 않은 요청이나 권한이 없는 요청은 어떤 방식으로 막을지까지 함께 설계해야 합니다. 이때 자주 등장하는 것이 바로 Spring Security입니다.그래서 이번 글에서는 워크북 내용을 바탕으로 Spring Security가 무엇인지,인증(Authentication)과 인가(Authorization)..

  • format_list_bulleted 백엔드
  • · 2026. 5. 13.

[Spring Boot / 백엔드] 페이징 이해하기 - Pageable, Page, Slice, Cursor Pagination

백엔드 개발을 하다 보면 데이터를 저장하는 것보다 조회 API를 어떻게 설계할지 더 고민하게 되는 순간이 옵니다.처음에는 저도 목록 조회 API를 만들 때 그냥 데이터를 전부 내려주면 되는 줄 알았습니다. 그런데 실제로 데이터를 다루다 보면, 조회 대상이 많아질수록 “어떻게 끊어서 보여줄지”가 훨씬 중요하다는 걸 느끼게 됩니다. 예를 들어 리뷰가 200개, 게시글이 1,000개, 미션이 수만 개라면그걸 한 번에 전부 조회해서 내려주는 방식은 성능상으로도, 사용자 경험 측면에서도 비효율적입니다. 그래서 이번 글에서는 워크북 내용을 바탕으로페이징이 왜 필요한지,Spring Data JPA에서 Pageable, Page, Slice는 어떤 역할을 하는지,그리고 오프셋 기반 페이지네이션과 커서 기반 페이지네이션..

  • format_list_bulleted 백엔드
  • · 2026. 5. 7.
[Spring Boot / 백엔드] JPA란? - ORM, 영속성 컨텍스트, 연관관계 기초 정리

[Spring Boot / 백엔드] JPA란? - ORM, 영속성 컨텍스트, 연관관계 기초 정리

백엔드 개발을 공부하다 보면 API 요청과 응답 흐름, Controller와 Service의 역할, 공통 응답 구조 같은 것들을 먼저 익히게 됩니다.그런데 어느 정도 API를 만들기 시작하면 자연스럽게 다음 단계의 고민이 생깁니다. “그래서 이 데이터를 DB에 어떻게 저장하고, 다시 어떻게 객체로 가져오는 걸까?”저도 처음에는 repository.save()나 findById() 같은 메서드를 그냥 자연스럽게 사용했지만, 정작 그 내부에서 어떤 일이 벌어지는지까지는 깊게 생각하지 않았습니다. 하지만 JPA를 공부하다 보니, 단순히 편하게 데이터를 저장하고 조회하는 도구를 넘어서, 객체 지향 언어와 관계형 데이터베이스 사이의 차이를 메워주는 핵심 기술이라는 점이 보이기 시작했습니다. 특히 영속성 컨텍스트,..

  • format_list_bulleted 백엔드
  • · 2026. 4. 29.
[Spring Boot / 백엔드] API 요청부터 응답까지 - 회원가입 흐름으로 보는 Controller, Service, Repository

[Spring Boot / 백엔드] API 요청부터 응답까지 - 회원가입 흐름으로 보는 Controller, Service, Repository

백엔드 개발을 하다 보면 Controller, Service, Repository를 나누는 이유는 어느 정도 익숙해집니다. 그런데 막상 API 하나를 구현하고 나면 이런 생각이 들 때가 있습니다.“그래서 실제 요청이 들어오면, 이 계층들은 어떤 순서로 동작하는 걸까?” 저도 처음에는 Controller가 요청을 받고 Service가 로직을 처리하고 Repository가 저장한다는 정도로만 이해했습니다.하지만 회원가입 API처럼 요청값 검증도 들어가고, 여러 테이블 저장도 필요하고, 마지막에는 공통 응답 형식으로 감싸서 반환하는 흐름을 하나씩 따라가다 보니 각 계층이 왜 분리되어 있는지 훨씬 선명하게 보였습니다. 그래서 이번 글에서는 회원가입 API 하나를 기준으로, 클라이언트가 요청을 보낸 순간부터 DB..

  • format_list_bulleted 백엔드
  • · 2026. 4. 23.
  • navigate_before
  • 1
  • 2
  • 3
  • navigate_next
전체 카테고리
  • 분류 전체보기 (17)
    • 대외활동 (2)
    • 백엔드 (15)
Copyright © Archive_99 모든 권리 보유.
SKIN: Copyright © 쭈미로운 생활 All rights reserved. Designed by JJuum.
and Current skin "dev-roo" is modified by Jin.

티스토리툴바