일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 후위 표기법
- force=true
- static factory method pattern
- 쿼리메소드
- JPA
- kruskal 알고리즘
- disjoint-sets
- @version
- 자료구조
- max idle time
- 프로세스
- 정적 팩토리 메서드 패턴
- jparepository
- 이진탐색트리
- NoArgsConstructor
- 프로세스의 상태
- 중위 표기법
- 알고리즘
- 낙관적 락
- 비관적 락
- 최대 유휴 시간
- prim 알고리즘
- query methods
- 트리
- binary search
- merge-sort
- quick-sort
- BST
- max lifetime
- 최대 유지 시간
- Today
- Total
목록분류 전체보기 (50)
Dionysus
✔️ 목차 ✅ 최대 유휴 시간 (Max Idle Time, MIT)DB 커넥션 풀 관리에서 매우 중요한 요소로, 사용되지 않는 커넥션을 풀에 유지할 수 있는 최대 시간예를 들어, 최대 유휴 시간을 30분으로 설정하면 30분 이상 사용되지 않은 커넥션은 종료되어 풀에서 제거된다. ✅ 최대 유지 시간 (Max Lifetime)DB 커넥션 풀 관리에서 매우 중요한 요소로, 커넥션이 생성된 시점부터 유지되는 시간예를 들어, 최대 유지 시간을 4시간으로 설정하면 커넥션은 생성된 시점부터 최대 4시간까지만 유지되며, 4시간이 지나면 커넥션이 유효하더라도 커넥션을 닫고 풀에서 제거된다. 🤔 최대 유휴 시간과 최대 유지 시간을 무한대로 설정하면 되지 않을까?최대 유휴 시간(MIT)과 최대 유지 시간(ML)을 무한대로..

📍 AOP (Aspect-Oriented Programming)'관점 지향 프로그래밍'으로, 어떤 로직을 기준하여 핵심적인 관점과 부가적인 관점을 나누어보고, 그 관점을 기준으로 각각 모듈화하는 것을 의미함 (*모듈화란? 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것)코드의 횡단 관심사(Cross-Cutting Concerns)를 모듈화하는 기법즉 코드를 부분적으로 나누어 흩어진 횡단 관심사를 Aspect로 모듈화하고, 핵심적인 비즈니스 로직에서 분리하여 재사용하겠다는 의미핵심적인 관점: 핵심적 비즈니스 로직부가적인 관점: 핵심 로직을 실행하기 위해 행해지는 DB 연결, 로깅, 파일 입출력에 해당AOP의 효과중복 제거유지보수 용이비즈니스 로직과의 분리💡 횡단 관심사(Cross-Cutting Co..
💡 IoC (Inversion of Control) - 제어의 역전전통적인 프로그래밍에서는 개발자가 프로그램의 흐름과 제어를 직접 다루는 반면, IoC는 프레임워크가 객체의 생명주기, 관리, 제어 흐름을 담당하도록 변경하는 개념 -> Spring은 이를 지원하기 위해 ApplicationContext라는 컨테이너를 제공한다. ✔️ ApplicationContext는 애플리케이션의 컴포넌트를 생성하고 조립하며, 객체의 라이프사이클을 관리한다. 🍃 ApplicationContext의 동작 과정은 아래와 같다.객체의 생성 및 관리ApplicationContext를 사용하여 빈(Bean)을 생성 및 관리빈(Bean)은 일반적으로 Spring이 제어하며, 개발자는 객체의 생성과 관리를 직접 처리하지 않음의존..
✔️ 목차 🤔 GenericDAO란?여러 엔티티에서 반복적으로 사용되는 CRUD 로직을 일반화하여 제네릭(Generic) 타입으로 추상화한 부모 클래스이다. GenericDAO라고 관례적으로 이름 붙인다. 이를 통해 각 Repository 클래스가 공통적으로 필요로 하는 기능을 중복 구현하지 않고 재사용할 수 있게 할 수 있다. 예시 코드를 살펴보자. public abstract class GenericDAO { @PersistenceContext protected EntityManager em; private Class entityClass; public GenericDAO(Class entityClass) { this.entityClass = entityClass;..
📌 문제 요약사과를 먹으면 몸 길이가 늘어나는 뱀이 N x N 보드 위에서 이동할 때, 벽이나 자기자신의 몸과 부딪히면 게임이 종료된다. 게임 시작 시 뱀은 맨위 맨좌측에 위치하며 몸 길이는 1이다. 또한 보드의 상하좌우 끝에 벽이 있다고 한다. 뱀은 처음에 오른쪽을 향하며, 몸 길이가 늘어날 땐 꼬리는 그대로 있고 머리가 한 칸 자라나 앞으로 이동한다. 사과의 위치와 뱀의 이동경로가 주어질 때, 이 게임이 몇 초에 끝나는지 계산하라. 😖 내가 생각한 로직 + 알고리즘파이썬의 deque를 사용하여 꼬리 위치를 저장해뒀다가 사과를 먹으면 그대로 두고, 사과를 먹지 못하면 popleft()를 통해 꼬리를 이동시키는 방식으로 구현하였다. 🤗 제출 후 pass한 코드from collections impo..

📌 문제 요약강 위의 다리를 n개의 트럭이 지나가려고 한다. 다리 위에는 w대의 트럭만이 동시에 올라갈 수 있다고 할 때, 모든 트럭들이 다리를 건너는 최단 시간을 출력하라. (단, 트럭의 순서는 변경할 수 없으며 트럭의 무게는 서로 같지 않을 수 있다. 또한 트럭들은 하나의 단위 시간에 하나의 단위 길이만큼만 이동할 수 있다고 가정한다.) 😖 내가 생각한 로직 + 알고리즘현재 다리 위에 있는 트럭의 무게를 group 변수에 저장하고, 현재 다리 위에 있는 트럭들의 첫 번째 트럭 순서 정보를 startTruck 변수에 저장한다. 또한 다리 위에 올라가지 못한 트럭들 중 가장 순서가 빠른 트럭의 순서 정보를 nextTruck 변수에 저장한다. 그리고 nextTruck 변수의 값이 n과 같거나 작은 동안..