JPA 관련 메서드
📌 개요 JPA와 관련된 메서드에 대해 자세히 알아보자. 📌 메서드명 기반 쿼리 findBy 와 같이 By 로 끝나는 메서드는 반드시 뒤에 추가 키워드가 붙어야 한다. 예를 들어 findByName 과 같이 속성 이름 또는 조건이 붙어야 하며, 이러한 방법을 Query Derivation 라고 한다. 예를 들어 findByLastnameAndF...
📌 개요 JPA와 관련된 메서드에 대해 자세히 알아보자. 📌 메서드명 기반 쿼리 findBy 와 같이 By 로 끝나는 메서드는 반드시 뒤에 추가 키워드가 붙어야 한다. 예를 들어 findByName 과 같이 속성 이름 또는 조건이 붙어야 하며, 이러한 방법을 Query Derivation 라고 한다. 예를 들어 findByLastnameAndF...
📌 AOP란? AOP(Aspect-Oriented Programming) 은 여러 모듈에서 반복되는 공통 기능을 하나의 모듈로 분리하여 재사용이 가능한 모듈로 만드는 프로그래밍 패러다임을 말한다. 관점 지향 프로그래밍이라고 부른다. 비즈니스 로직을 작성하다 보면, 여러 모듈에 걸쳐 공통으로 필요한 기능들이 중복으로 구현되는 경우가 많다. 이렇게 코...
📌 문제 https://www.acmicpc.net/problem/1766 📌 설명 1. N개의 문제는 모두 풀어야 한다. 2. 먼저 푸는 것이 좋은 문제가 있는 문제는, 먼저 푸는 것이 좋은 문제를 반드시 먼저 풀어야 한다. 3. 가능하면 쉬운 문제부터 풀어야 한다. 위 문제를 풀기 위한 조건이다. 2번 조건을 통해 위상 정렬을 사용...
📌 개요 프론트엔드, 백엔드 서버 배포의 전반적인 프로세스를 살펴보자. 📌 도메인 DNS 설정 도메인을 구매하여 배포된 서버의 도메인과 매핑해보자. DNSZi DNSZi는 네임서버를 관리해주는 사이트이다. 접속 후 회원가입을 한다. 좌측에서 본인의 네임서버를 확인할 수 있다. 도메인 구매 가비아에 접속하여 회원가입 후 원하는 도메...
📌 문제 https://www.acmicpc.net/problem/14003 📌 설명 이분탐색을 통해 LIS의 길이 및 LIS를 구하는 방법을 알아야 한다. 먼저 LIS의 길이를 구하기 위해 임의의 벡터 tmp를 선언한다. 입력받은 배열 각각에 대하여 tmp에 들어갈 곳을 이분 탐색을 통해 찾는다. 만약 찾을 수 없다면 tmp에 값을 삽입하고,...
📌 문제 https://www.acmicpc.net/problem/1806 📌 설명 누적 합을 저장하는 두 개의 배열을 사용한다. 특정 지점의 인덱스를 i라고 할 때, sum1은 인덱스가 0부터 i까지의 누적 합을 저장하며 sum2는 i부터 n-1까지의 누적 합을 저장한다. 그 다음, 투 포인터를 통해 조건에 맞는 구간을 찾는다. tot-sum...
📌 문제 https://www.acmicpc.net/problem/9466 📌 설명 DFS 를 통해 사이클을 찾는 방법을 사용하는 문제이다. 위 그림에서 A, B, C는 팀 생성이 불가능하며, 나머지는 팀 생성이 가능하다. DFS의 시작 노드를 start, DFS 수행 중 이미 방문한 노드를 처음 만났을 때 해당 노드를 cur 이라고 한다면...
📌 Flyway란? Flyway 는 데이터베이스 형상 관리 도구로, 데이터베이스 스키마의 변경사항을 추적 및 관리할 수 있도록 한다. Git이 소스 코드를 관리하는 것을 생각하면 된다. 가장 큰 장점은 SQL마저 버전 관리가 가능해진다는 점이다. 또한 flyway_schema_history 테이블에서 스키마 변경 이력을 확인할 수 있어 문제 추적...
📌 문제 https://www.acmicpc.net/problem/2110 📌 설명 이분 탐색으로 최적의 인접 공유기 사이 거리를 구해야 하며, 이를 parametric search 라고 한다. 공유기 사이 거리로 가능한 값 중, 가장 작은 값은 1이고, 가장 큰 값은 가장 멀리 떨어진 두 집 간 거리일 것이다. 첫 번째 공유기는 첫 번째 집에...
📌 문제 https://www.acmicpc.net/problem/1621 📌 설명 원숭이가 N개의 바나나를 가져간다. 두 가지 선택지가 있는데, 바나나 하나만 가져가거나 K개를 한꺼번에 가져가는 방법이 있다. 하나만 가져가는 경우 바나의 무게만큼 시간이 걸리며 K개를 한꺼번에 가져가면 C의 시간이 걸린다. 원숭이가 바나나를 모두 옮기는 데 걸...