Spring 2

Seed를 사용하여 Pagenation + Random에서 중복 없이 데이터 가져오는 방법 | ORDERBY RANDOM PostgreSQL seed

어느날 페이지네이션을 사용하면서 랜덤한 값들을 응답해줘야하는 요구사항이 들어왔습니다.1. 한 번 요청시 5개씩 데이터를 응답해줘야 한다.2. 중복된 데이터가 나오면 안된다.3. 완전 랜덤한 데이터가 나와야 한다. 오늘은 해당 요구사항을 구현하는 방법인 seed에 대하여 알아보고, postgres + jpa 환경에서의 구현 방법을 알아보고자 합니다. Seed란 무엇인가?컴퓨터는 원래 난수를 생성할 수 없다는 사실 아시나요? 저희가 보기엔 마치 난수처럼 보이지만, 사실 정말 임의의 값이 아닌 특정 방법이나 ms를 사용하는 등의 계산 과정을 거쳐 나온 '의사 난수'들입니다.흔하게는 난수표를 사용하는데, 난수표를 선택하는 값을 시드(seed)라고 합니다. 그리고 seed값에 따라 같은 난수표를 사용하기 때문에 ..

Spring 2025.03.16

Spring Boot로 OAuth 구현하기 01: OAuth 2.0란? OAuth 완벽 정리

로그인을 할 때 소셜 로그인을 선호하시나요 직접 회원가입을 선호하시나요?저는 소셜 로그인을 더 선호합니다. 2020년 자료이긴 하지만 소비자연맹이 조사한 결과에 따르면 64% 정도의 사용자가 소셜로그인을 주로 사용한다고 대답했네요.  이번 소셜 로그인 파트에서는 가장 많이 사용되는 top 3의 소셜 로그인을 구현하는 방법을 정리해 볼 예정입니다. 오늘은 개발 전 OAuth란 무엇인지 알아보고, 어떤 식으로 동작하는지 이해해볼 것입니다. 구현 전 4챕터를 확인하시는 걸 추천드립니다. 목차는 아래와 같습니다.1. OAuth란?2. OAuth 탄생 이유3. OAuth와 OAuth 2.0의 차이점4. OAuth 2.0 표준 동작 방식 (OAuth 2.1 간단 알아보기) OAuth란?OAuth는 액세스 위임을 위..

Spring 2025.02.16