자료 구조(Data Structure)자료구조 개론 - 1 // Java 배열을 활용한 객체 만들기 - 2 // 배열을 활용한 Stack 구현해보기 - 3 // 큐(Queue) 구현하기 - 4 // LinkedList 구현해보기 - 5 // 컬렉션 프레임 워크컬렉션 프레임 워크 - 6 // List 인터페이스 - 7 // Set 인터페이스 - 8 // Map 인터페이스 - 9 // JDBC JDBC란 뭘까? - 1 JDBC 구성 요소(아키텍처) - 2JDBC 설치 및 설정 - 3JDBC 기본 사용법 - 4JDBC 데이터 기본 조작(CRUD) - 5 JDBC 트랜잭션 관리와 배치 처리 - 6 JDBC를 활용한 CRUD 와 SOLID 원칙 - 7 JDBC 성능 최적화 -..
목차1. 요구사항JDBC를 사용하여 학생 관리 시스템을 구축해 보자.● 학생의 정보를 데이터베이스에 저장하고 관리하는 간단한 시스템을 구축합니다.● 학생 정보를 추가, 조회, 수정, 삭제할 수 있는 기능을 구현합니다.기능 요구사항학생 정보 추가학생 정보 조회학생 정보 수정학생 정보 삭제비기능 요구사항사용자 친화적인 콘솔 인터페이스 제공적절한 예외 처리 및 로그 기록데이터베이스 연결 풀 사용(HikariCP)2. 프로젝트 설계1. 데이터베이스 설계 및 테이블 생성 테이블 - tbstudent 컬럼 - id, name, age, emailcreate database studentdb;CREATE TABLE students ( id INT AUTO_INCREMENT PRIMARY KEY, name ..
1. SQLException 다루기 SQLException은 JDBC에서 발생할 수 있는 일반적인 예외이다. 이 예외는 데이터베이스와의 통신 중에 발생하는 오류를 나타낸다. SQLException은 다양한 속성과 메서드를 제공하여 예외에 대한 상세한 정보를 제공한다.주요 속성 및 메서드 :getErrorCode(): 데이터베이스 벤더가 제공하는 특정 오류 코드를 반환한다.getSQLState(): SQLState 코드를 반환합니다. 이 코드는 표준 SQL 상태 코드를 나타낸다.getMessage(): 예외 메시지를 반환한다.getNextException(): 체인된 예외를 반환한다.SQL 작성-- DML DCL DDL-- 컬럼 추가하는 쿼리를 만들어 보자.create table users( id i..
목차1. PreparedStatement 사용의 장점 PreparedStatement는 SQL 쿼리를 미리 컴파일하고, 동일한 쿼리를 반복해서 실행할 때 효율적으로 사용할 수 있는 인터페이스이다. 이는 성능과 보안 측면에서 많은 장점을 제공한다.성능 향상:쿼리 컴파일 : SQL 쿼리를 미리 컴파일하여, 쿼리를 여러 번 실행할 때 컴파일 시간을 절약할 수 있다.쿼리 계획 재사용 : 동일한 쿼리를 반복적으로 실행할 때, 쿼리 계획을 재사용하여 실행 시간을 단축할 수 있다.보안 향상:SQL 인젝션 방지 : 쿼리와 데이터가 분리되어 있어 SQL 인젝션 공격을 방지할 수 있다.예시 코드String sql = "INSERT INTO users (name, email) VALUES (?, ?)";try (Connec..
목차1. 콘솔을 활용한 간단한 퀴즈 게임 만들어 보기1. DB, 테이블 설계2. 기본 데이터 입력(정규화)3. 자바측 라이브러리 설정4. 자바측 기능 구현 및 테스트5. 리팩토링-- 데이터베이스 생성create database quizdb;use quizdb;create table quiz( id int AUTO_INCREMENT PRIMARY KEY, question varchar(500) not null, answer varchar(500) not null);desc quiz;-- 기본 샘플 데이터 입력insert into quiz(question, answer) values ('대한민국의 수도는?', '서울'), ('한반도 남쪽에 위..
목차1. 트랜잭션 관리(commit, rollback) 트랜잭션은 여러 SQL 문을 하나의 작업 단위로 묶어주는 것을 의미한다. commit은 트랜잭션을 완료하여 변경사항을 저장하고, rollback은 트랜잭션을 취소하여 변경사항을 되돌린다. 트랜잭션의 개념과 중요성 트랜잭션의 개념 :트랜잭션(Transaction)은 데이터베이스에서 하나의 논리적인 작업 단위를 의미한다. 여러 SQL 문이 하나의 작업으로 묶여서 실행된다.트랜잭션은 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 지속성(Durability)의 특성을 갖는다. 이를 ACID 특성이라고 한다.원자성 (Atomicity) 원자성은 트랜잭션의 모든 작업이 성공적으로 완료되거나, 전혀 실행되지 않은 상태..