전체 글
-
DATAWARE™ DA# 5 사용해보기카테고리 없음 2024. 9. 10. 10:11
선수작업MySQL ODBC 드라이버 설치- 설치 링크: https://dev.mysql.com/downloads/connector/odbc/ MySQL :: Download Connector/ODBCSelect Version: 9.0.0 8.0.37 Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS Source Code Selectdev.mysql.com - 꼭 32bit 프로그램 다운받기..
-
20240904 17일차카테고리 없음 2024. 9. 4. 17:36
[데이터베이스] [RDBMS] - 관계형 데이터베이스 * 데이터는 테이블 형태로 저장됨 * 테이블 간의 관계는 외래 키 등을 통해 정의됨 * 고정된 테이블 스키마 * 대규모 데이터 처리 시 성능 저하가 발생할 수 있음 [NoSQL] - 비관계형 데이터베이스 (Not only SQL) * Key-Value 형태로 데이터를 저장하기 때문에 Join이 불가능 * 분산형 구조로 설계 * 유동적인 테이블 스키마 [JDBC 드라이버] - Java는 모든 DBMS에서 공통으로 사용할 수 있는 인터페이스와 클래스로 구성된 JDBC를 제공 - JDBC 드라이버의 구현체를 이용해서 특정 벤더의 데이터베이스에 접근할 수 있음
-
20240902 15일차카테고리 없음 2024. 9. 2. 21:28
[Thread Pool] - Thread 개수가 많아지면 그에 따른 스레드 객체 생성과 스케줄링 등으로 CPU와 메모리에 많은 부하가 발생 -> 동시에 실행하는 스레드 개수를 제한할 필요 - Thread Pool은 제한된 개수의 thread를 JVM에 관리하도록 맡기는 방식 - java.util.concurrent 패키지 [Thread 생명주기] 객체 생성 - NEW * 스레드 객체가 생성된 상태 * 아직 start() 메서드가 호출되지 않았으며, 이 상태에서는 스레드가 실행되지 않음 실행 대기 - RUNNABLE * start() 메서드가 호출된 후, 스레드가 실행 대기열에 있는 상태 * 스레드가 실행될 준비가 되었지만, CPU 자원을 할당받지 못해 대기 중일 수 있..
-
20240830 14일차카테고리 없음 2024. 8. 30. 17:37
[자료구조] 자료구조 시각화 참고 사이트: https://visualgo.net[Singly Linked List] - addFirst : O(1) 1) Node 생성, 값을 할당 2) 생성한 node를 가리킨다 3) size++- addLast: O(N)- get: O(N) [프로세스와 스레드] [프로세스] - 실행 중인 프로그램 - 프로세스끼리는 서로 독립적 [스레드] - 하나의 실행 흐름으로 프로세스 내부에 존재 - 하나의 프로세스는 하나 이상의 실행 흐름을 포함하기 때문에 프로세스는 적어도 하나의 스레드를 가짐 [멀티태스킹 (Multitasking)] - 운영 체제가 여러 프로그램이나 작업을 동시에 실행하는 것 - 멀티 코어 CPU라면 실제로 다수의 애플리케이션을 동시에 병렬처리, 싱글..
-
[Spring] 프로젝트 생성하기카테고리 없음 2024. 8. 29. 23:49
프로젝트 환경설정 및 생성다음 사이트에서 스프링 프로젝트 생성 https://start.spring.io build.gradle 파일이 아래처럼 생성됨plugins { id 'java' id 'org.springframework.boot' version '3.3.3' id 'io.spring.dependency-management' version '1.1.6'}group = 'hello'version = '0.0.1-SNAPSHOT'java { toolchain { languageVersion = JavaLanguageVersion.of(17) }}repositories { mavenCentral()}dependencies { implementation 'org.springframework.boot:s..
-
20240829 13일차카테고리 없음 2024. 8. 29. 17:48
[Stream] - 컬렉션은 데이터 원소의 효율적인 관리와 접근에 맞게 설계되어 있지만, 스트림은 데이터 원소에 서 수행할 함수형 연산에 맞게 설계되어 있음 - 스트림은 원소에 직접 접근하거나 조작하는 수단을 제공하지 않음 - 스트림을 다 사용한 후에는 더 이상 재사용할 수 없음 - Optional * 결과가 없을 수도 있는 경우를 안전하게 처리하기 위해 사용함 * 값이 없을 때 기본값을 제공할 수 있음 * 값이 없을 때 예외를 던질 수 있음 - 느긋한 연산/조급한 연산 * 느긋한 연산은 조급한 연산이 데이터 소스에게 원소를 요구할 때까지 아무 연산도 수행하지 않음 * 스트림의 최종 연산: 조급한 연산, 중간 연산: 느긋한 연산 * 스트림의 중간 연산이 느긋한 연산이기 때문에 다운로..
-
20240828 12일차카테고리 없음 2024. 8. 28. 17:29
[Set 컬렉션] - 순서 X, 중복 X 객체 저장 - 인덱스가 없어서 저장 순서를 무시함 [Map 인터페이스] - 순서 X - key-value 쌍으로 구성된 객체 저장 - key, value 둘 다 객체 - key는 중복 X - Map 객체에 같은 key로 중복 저장되지 않도록 하려면 Set 객체처럼 key로 사용할 클래스에 대한 hashCode( )와 equals( ) 메서드의 오버로딩이 필요함 - HashMap과 Hashtable * Hashtable은 HashMap과 달리 동기화된 메서드로 구현되어 스레드에 안전 * HashMap에서는 key-value로 null을 사용할 수 있음 (Hashtable은 안됨) [Collections] - Collection을 다루는 다양한 메서드를 제공하..
-
20240827 11일차카테고리 없음 2024. 8. 27. 17:24
[Generic] - 데이터 타입을 일반화(generalize)하는 기능을 제공 - 클래스, 인터페이스, 메서드를 데이터 타입에 상관없이 재사용할 수 있음 - 실제 사용 시에는 구체적인 타입이 결정되어야 하지만, 설계할 때는 구체적 타입을 언급하지 않음 * public class ArrayList extends AbstractList - 타입 안정성 제공: 컴파일 시 타입을 점검하기 때문에 런타임 오류 사전 방지 - 타입체크 및 형변환 생략: 불필요한 타입 변환이 없으므로 코드가 간결해지고 프로그램 성능이 향상됨 - Generic 타입 매개변수를 Object라고 설정하면, 매번 타입 체크를 해줘야되기 때문에 불편함 - Generic 타입에 대한 범위 제한 * 모든 타입으로 대체할 수 없고, 특정 ..