1️⃣ JDBC (Java Database Connectivity)JDBC : 자바 애플리케이션에서 데이터베이스와 연결하고 조작할 수 있도록 도와주는 API🔔 JDBC의 역할데이터베이스 연결 : 다양한 데이터베이스(MySQL, Oracle, PostgreSQL 등)와 연결 가능SQL 실행 : 데이터 삽입, 조회, 수정, 삭제 등 SQL 문장을 실행트랜잭션 처리 : 데이터 무결성을 유지하기 위한 트랜잭션 관리플랫폼 독립성 제공 : JDBC 드라이버를 통해 다양한 DBMS를 동일한 코드로 제어 가능💻 동작 원리JDBC 드라이버 로딩 (Class.forName("com.mysql.cj.jdbc.Driver");)데이터베이스 연결 (DriverManager.getConnection(url, user, pas..
Java의 메모리 구조는 크게 5가지로 나뉜다.1️⃣ 메서드(Method) 영역 (또는 클래스 영역)JVM이 클래스 정보를 저장하는 공간모든 스레드가 공유하는 공간이며 클래스 로딩 시에 초기화된다.클래스 로더(Class Loader)에 의해 로드된 클래스의 메타데이터가 저장되며 특히 static 변수, final 상수, 메서드 코드, 인터페이스 정보가 저장된다. 2️⃣ 힙 영역 (Heap Area)JVM의 GC(Garbage Collection)이 관리하는 영역이며 모든 스레드가 공유한다.객체가 생성되는 공간이며 모든 객체와 배열이 저장된다. 3️⃣ 스택 영역 (Stack Area)메소드 호출 시 생성되는 프레임이 저장된다.프레임에는 지역 변수, 매개변수, 리턴 값, 스레드 정보 등이 포함된다.메소드가..
🎯 객체 지향 프로그래밍(OOP)객체 지향 프로그래밍(Object-Oriented Programming, OOP)은 소프트웨어를 객체 단위로 구성하고, 객체 간의 관계를 정의하여 프로그래밍하는 방식으로, 유지보수성과 확장성을 높이고 코드를 더 직관적이고 재사용 가능하게 만든다. 클래스 : 객체를 생성하기 위한 틀(설계도)객체: 클래스에서 생성된 실체(Instance)로, 메모리에 할당되어 실제 동작하는 단위 클래스객체정의객체를 만들기 위한 틀클래스에서 생성된 실체메모리메모리에 할당되지 않음메모리에 할당됨역할속성과 동작을 정의속성과 동작을 실제로 가짐예제Car 클래스myCar = new Car("Hyundai", 100); 그리고 객체와 클래스는 다음과 같은 관계를 만족한다. 클래스를 먼저 정의한 후 객..
🎨 컬렉션 프레임워크컬렉션 프레임워크는 데이터를 저장하고 조작하는 표준화된 아키텍처를 제공한다.자바의 배열(Array)은 크기가 고정되어 있지만 컬렉션을 사용하면 동적으로 크기를 변경할 수 있다.또한 다양한 기능(삽입, 삭제, 검색 등)도 가능하다. 주요 인터페이스는 다음과 같다.인터페이스특징구현 클래스List순서가 있으며 중복을 허용ArrayList, LinkedList, VectorSet순서가 없으며 중복을 허용하지 않음HashSet, TreeSet, LinkedHashSetQueueFIFO(First-In-First-Out) 방식LinkedList, PriorityQueue, ArrayDequeMap키-값(Key-Value) 쌍으로 저장, 키는 중복 불가HashMap, TreeMap, Linked..