DB 3

트랜잭션 - 이해

데이터를 저장할 때 단순히 파일에 저장해도 되는데, 데이터베이스에 저장하는 이유는 무엇일까?여러 가지 이유가 있지만 , 가장 대표적인 이유는 바로 데이터베이스는 트랜잭션이라는 개념을 지원하기 때문이다.  트랜잭션이란? 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 연산들을 의미합니다. 이러한 관점에서 데이터베이스 응용프로그램은 트랜잭션의 집합으로 정의할 수 있습니다. 트랜잭션 필요성논리적인 작업들을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우 이전 상태로 복구하여 작업의 일부만 적용되는 현상이 발생하지 않게 만들어주는 기능입니다.  트랜잭션 ACID트랜잭션은 ACID 라 하는 원자성(Atomicity), 일관성(Consistency..

DB 2025.01.12

JDBC 연결, 왜 커넥션 풀이 필요할까? DriverManager, DataSource, HikariCP 완전 정복

자바에서 DB 에 연결하는 방법은 다양하다. 대부분 JDBC(Java Database Connectivity)로 시작해서, 이후에 JPA나 MyBatis와 같은 ORM 기술을 익히게된다.처음 JDBC를 접하면 보통 DriverManger 를 통해 DB에 연결한다.하지만 애플리케이션 규모가 커지고 동시에 처리해야 하는 트래픽이 많아질수록, 단순한 연결방식만으로 부족함을 느낀다.이때 등장하는 개념이 커넥션 풀이다.이번 글에서는 다음 내용을 실습과 함께 정리해 보았다.왜 커넥션 풀이 필요할까?DataSource, DriverManager, HikariCP의 차이는 무엇인가?각 방식으로 직접 JDBC 연결을 해보자 1. 커넥션 풀(Connection Pool)이란?커넥션 풀이란 미리 일정 개수의 DB 커넥션을 ..

DB 2025.01.11

JDBC 이해: 등장 배경 및 동작원리

자바 개발자로서 데이터베이스를 다룰 때 가장 먼저 만나게 되는 기술인 JDBC(Java DataBase Connectivity) 이다.JDBC 는 1997년에 등장한 오래된 기술이지만, 여전히 SQL 기반 데이터베이스와 자바를 연결하는 핵심 기반 기술로 자리잡고 있다. 이 글에서 JDBC 의 등장배경, 동작원리, 코드 작성방식, 그리고 실무에서의 어떤 한계와 대안이 있는지를 정리해보겠다,JDBC 등장 이유애플리케이션을 개발할 때 중요한 데이터는 대부분 데이터베이스에 보관한다. 애플리케이션 서버와 DB - 일반적인 사용법 이떄 일반적인 프름은 다음과 같다.커넥션 연결 : 주로 TCP/IP를 사용해서 커넥션을 연결한다.SQL 전달 : 애플리케이션 서버는 DB가 이해할 수 있는 SQL을 연결된 커넥션을 ..

DB 2025.01.10