1. Java map Java에서 Map 인터페이스는 java.util 패키지에 있으며 키와 값 간의 매핑을 나타냅니다. Collection 인퍼페이스와는 다른 저장방식을 가집니다. 맵은 사전과 같은 키-값 연결 매핑에 사용하기에 완벽합니다. 맵은 키로 조회를 수행하거나 키로 요소를 검색하고 업데이트하려고 할 때 사용됩니다. 2. Map 특징 맵은 중복 키를 포함할 수 없으며 각 키는 최대 하나의 값에 매핑할 수 있습니다. 저장 순서는 특정 구현에 따라 다릅니다. TreeMap과 LinkedHashMap은 예측 가능한 순서가 있지만, HashMap에는 순서가 없습니다. Java에서 map을 구현하기 위한 두 가지(Map, SortedMap) 인터페이스와 세 가지 클래스(HashMap, TreeMap 및 ..
분류 전체보기
1. JVM 이란? Java 프로그램이 실행되기 위해 필요한 런타임 환경을 제공하는 프로그램입니다. C와 같은 프로그래밍 언어에서는 코드는 먼저 플랫폼별 기계어로 컴파일됩니다. 이러한 언어를 컴파일 언어라고 합니다. 반면 javascript 및 python과 같은 언어에서는 컴퓨터가 코드를 컴파일하지 않고 직접 실행합니다. 이러한 언어를 인터프리터 언어라고 합니다. Java는 두 기술을 조합하여 사용합니다. 소스 코드는 먼저 바이트 코드로 컴파일 되어 클래스 파일을 생성합니다. 이 클래스 파일은 기본 플랫폼에 대한 JVM에 의해 해석됩니다. 모든 플랫폼 및 운영 체제에서 실행되는 모든 버전의 JVM에서 동일한 클래스 파일을 실행할 수 있습니다. 2. JVM의 동작 방식 자바 프로그램을 실행하면 JVM은 ..
에러 상황 Mac OS 환경에서 Mariadb 를 homebrew로 설치했습니다. 이후 spring 에서 작업 시 MySQL 커넥터를 사용해서 DB를 연동했습니다. 잘 사용하다가 파이썬을 설치한 이후로 해당 에러가 발생하고 JDBC DB 연동이 안됐습니다. MariaDB [(none)]> select @@version, @@version_comment; +----------------+-------------------+ | @@version | @@version_comment | +----------------+-------------------+ | 11.0.2-MariaDB | Homebrew | +----------------+-------------------+ java.sql.SQLExcept..

B-Tree 자식 2개 만을 갖는 이진 트리를 확장하여 N개의 자식을 가질 수 있도록 고안된 것입니다. 좌우 자식 간의 균형이 맞지 않을 경우에는 매우 비효율적이라, 항상 균형을 맞춘다는 의미에서 Balanced Tree 라고 불립니다. 최상위에 단 하나의 노드 만이 존재하는데, 이를 루트 노트라고 합니다. 중간 노드를 브랜치 노드, 최하위 노드를 리프 노드라고 합니다. 각 노드가 키를 오름차순으로 포함하도록 데이터를 저장합니다. 이러한 각 키에는 다른 두 개의 하위 노드에 대한 두 개의 참조가 있습니다. 왼쪽 자식 노드 키는 현재 키보다 작고 오른쪽 자식 노드 키는 현재 키보다 큽니다. 페이지 디스크와 메모리에 데이터를 읽고 쓰는 최소 작업 단위입니다. 일반적으로 인덱스를 포함해 PK와 테이블 등은 모..