목록분류 전체보기 (276)
빙응의 공부 블로그

📝 풀이 기본 구조를 가지면 다음과 같다. 1234510 2 0 3 0 4 0 5 0 여기서 이제 승패를 1, -1로 표시하면 다음과 같이 나온다. 12345101 2-10-1-113 10-1 4 110 5 -1 0 문제에서 설명하는 순위를 알 수 있는 것은 자신을 제외한 모든 사람과의 시합을 알 수 있는 사람 즉 모든 배열이 채워진 사람을 말한다. 즉 모든 로직이 끝났을 때 자신을 제외하고 배열에 0이 없는 사람을 검사하면 된다. [Arogorithm]그래프 - 플로이드워셜 [Arogorithm]그래프 - 플로이드워셜플로이드 워셜은 그래프에서 최단 거리를 구하는 알고리즘이다.최단 거리 문제는 다익스트라, 벨만포드, 플로이드 워셜이 있다.기능특징시간복잡도모든 노드 간에 최단..

이번 게시글은 조회 최적화와 QueryDSL을 다루겠습니다. 📝배경이번에 졸업 작품 프로젝트에서 메인서버를 맡아 개발하게 되었습니다. 파티를 만들어서 그안에 코스를 보고 대학생들이 자연스럽게 약속하는 앱을 만드는 과정인데 해당 과정에서 중요하게 본 점은 조회 쿼리에 대한 효율입니다. 그래서 김영한의 스프링에서 학습한 내용을 기반으로 QueryDSL을 사용하여 조회 최적화를 시도해 보았습니다 . QueryDSL을 사용하여 조건에 따른 동적 쿼리를 유연하게 처리할 수 있었습니다.해당 슬라이드에서 설명하는 것처럼 파티는 식사, 음주, 종합으로 나누어 조회합니다. 이 과정을 쉽게 하기 위해 동적 쿼리 추가가 쉬운 QueryDSL을 사용했습니다. QueryDSL에 대해 자세히 알고 싶으면 전에 공부했던 포스팅..

이번 게시글은 Redis와 RefreshToken에 대해 다루겠습니다. 📝배경이번에 졸업 작품 프로젝트에서 메인서버를 맡아 개발하게 되었습니다. 그래서 로그인을 개발하게 되어 두개의 토큰 방식(Access, Refresh)를 구현하였고 Refresh는 따로 데이터베이스에 저장하여 관리하게 되었다. 여기서 데이터베이스에 Refresh Token을 관리하는 이유를 간략히 적어보자면... 보안성 강화 : 데이터베이스를 화이트 리스트로 사용하여 변조, 탈취된 Refresh Token에 대한 대응성 확보가 가능합니다. 추적 및 접근 제어 : 로그아웃하거나 비정상적인 상황이 발생했을 때 데이터베이스 Refresh Token을 제거하여 추적이 가능합니다.📝 왜 Redis인가? Redis를 사용하는 이유는 주로..

Team.UniP Team.UniPTeam.UniP has 3 repositories available. Follow their code on GitHub.github.com파티를 모집하는 프로젝트 진행 중에 교수님이"AI 같은거 써보는게 어때?"라고 하셨습니다. 그래서 한번 ChatGPT API 학습 겸 사용하기로 했습니다. 📝주소 기반 코스 추천 API 만들기 사용 의존성 implementation 'com.fasterxml.jackson.core:jackson-databind' // json 파싱 implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' runtim..

📝1. OpenFeign이란?OpenFeign이란?Open Feign는 선언적인 HTTP Client 도구로써, 외부 API 호출을 쉽게할 수 있도록 도와줍니다.여기서 "선언적인" 이란 어노테이션 사용을 의미합니다. Open Feign은 인터페이스에 어노테이션들만 붙여주면 구현이 됩니다. 이러한 방식은 Spring Data JPA와 유사하다고 합니다.@FeignClient(name = "apiFeignClient", url = "https://apis.data.go.kr")public interface ApiFeignClient { @GetMapping("/1613000/RTMSDataSvcAptTrade/getRTMSDataSvcAptTrade") String getAptTradeData(..

[Spring]단위 테스트 정리하기 JUnit(1/3) (tistory.com)[Spring]단위 테스트 정리하기 Mockito (2/3) (tistory.com)📝실습할 코드 실습 코드는 현재 진행하는 프로젝트에서 가져왔고매우 어려운 부분을 가져왔습니다.. 해당 코드는 프로젝트에서 가져온 학교 인증 비즈니스 로직입니다. @Service@RequiredArgsConstructor@Slf4jpublic class UniversityVerificationService { private final JavaMailSender javaMailSender; private final UniversityVerificationRepository universityVerificationRepository; ..