Gradle과 build.gradle Gradle은 그루비(Groovy)를 기반으로 한 빌드 도구이며 빌드 자동화, 의존성 관리 등이 가능합니다. build.gradle 파일은 빌드 스크립트라고 하며 의존성, 플러그인 등 빌드에 필요한 설정을 할 수 있습니다. build.gradle 구성 buildscript 일반 소스코드가 아닌 gradle로 task를 수행할 때 사용되는 설정이며 buildscript 안에서의 repository와 dependency는 밖에 설정한 repository와 dependency는 큰 차이가 있습니다. buildscript { ext { queryDslVersion = "5.0.0" } repositories { } dependencies { } } plugins Plugin..
1. 문제정보 https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 2. 해결전략 중첩되는 조건 구현하기 중첩되었을 때 어떻게 해야 가장 많은 회의를 진행할 수 있을지 고민 회의시간을 오름차순으로 정렬하고 종료시간이 빠른 것부터 쌓아 나간다면 가장 많은 회의를 진행할 수 있을 거라는 생각 3. 코드 N = int(input()) schedule = [] for i in range(N): schedule.append(list(map(int,input().split())))\ # 오름차순 정렬 schedule.sort() result = [] for i in sched..
JPA를 사용할 때 생성자, 수정자, 생성일, 수정일 등 도메인들이 공통적으로 가지고 있는 속성이 있다면 JPA Auditing 기능 을 사용하는 것을 고려해볼 수 있습니다. 공통적인 속성이 있다는 것은 반복되는 코드가 생긴다는 것인데 JPA에서는 이 문제를 Auditing 기능을 통해 해결해줍니다. Auditing 사용 예제 1. build.gradle에 의존성 추가 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' 2. Application Main 클래스에 @EnableJpaAuditing 어노테이션 추가 @SpringBootApplication @EnableJpaAuditing public class HarmonicEll..
Redis의 개념 Redis는 고성능 키-값 저장소로서 String, List, Hash, Set, Sorted Set 등의 자료 구조를 지원하는 NoSQL이며 메모리에 데이터를 저장합니다. 별도의 쿼리 없이 Key를 통해 값을 빠르게 가져올 수 있으며 디스크에 데이터를 쓰는 구조가 아니라 메모리에서 데이터를 처리하기 때문에 처리 속도가 매우 빠른 특징이 있습니다. ※ NoSQL이란 키 값 저장 공간으로 관계형 데이터베이스 보다 덜 제약적이며 저장 및 검색에 특화된 데이터베이스를 의미 Redis의 특징 영속성을 지원하는 인 메모리 데이터 저장소 다양한 자료구조 지원 싱글 스레드 방식으로 연산을 원자적으로 수행이 가능 읽기 성능 증대를 위한 서버 측 리플리케이션 지원 쓰기 성능 증대를 위한 클라이언트 측 ..