분류 전체보기179 [DB] 트랜잭션(Transaction) 트랜잭션(Transaction)은 데이터베이스에서 하나의 논리적 작업 단위로 처리되는 일련의 데이터베이스 연산을 뜻합니다. 트랜잭션은 여러 연산을 하나로 묶어서 실행하는 개념으로, 연산이 모두 성공할 때만 데이터베이스에 적용되며, 하나라도 실패할 경우 전체 연산이 취소됩니다. 이처럼 트랜잭션을 통해 데이터의 일관성과 무결성을 보장할 수 있습니다. 트랜잭션의 4가지 주요 속성 (ACID 원칙) 1. Atomicity (원자성): 트랜잭션에 포함된 작업들은 모두 성공하거나 모두 실패해야 합니다. 하나의 연산이라도 실패할 경우, 이미 실행된 다른 연산들도 취소(롤백)되어야 합니다. 2. Consistency (일관성): 트랜잭션이 실행되기 전과 후에 데이터베이스가 항상 일관된 상태를 유지해야 합니다. 이를 .. 2024. 11. 12. [DB] 관계형 데이터베이스 & 비관계형 데이터베이스 1. 관계형 데이터베이스 (RDBMS) : 행렬 | 관계 | Fixed Schema • 행렬 구조: 관계형 데이터베이스(RDBMS)는 데이터를 표(테이블) 형태로 저장하며, 각 테이블은 행(row)과 열(column)로 구성됩니다. • 관계: 테이블 간에 관계를 설정하여 데이터를 연결합니다. 예를 들어 Customer와 Order 테이블은 고객과 주문 정보를 연결하는 식으로 관계를 맺습니다. • 고정된 스키마(Fixed Schema): 데이터 구조(스키마)를 사전에 정의해야 하며, 데이터는 정의된 스키마에 따라 삽입됩니다. RDBMS 예시: MySQL, PostgreSQL, Oracle Database, SQL Server 1.2. 비관계형 데이터베이스 (NoSQL) : 비정형 | 비관계 | Schem.. 2024. 11. 11. [GitHub] 커밋 메시지 컨벤션 (Commit Message Convention) 커밋 메시지 컨벤션(Commit Message Convention)은 커밋 메시지의 일관성과 가독성을 높이기 위해 메시지 구조와 형식을 규정하는 방식입니다. 주로 여러 명이 협업하는 프로젝트에서 각 커밋의 목적과 변경 내용을 쉽게 파악할 수 있도록 돕습니다. 대표적인 규칙으로 Conventional Commits가 있으며, 이 규칙은 타입(type), 제목(subject), 본문(body), **푸터(footer)**로 구성됩니다. 1. 기본 커밋 메시지 구조 • 타입(Type): 커밋의 목적을 나타내는 필수 항목 • 제목(Subject): 변경의 간략한 설명 • 본문(Body): 변경 이유와 상세 설명 (선택 사항) • 푸터(Footer): 이슈 번호 참조나, 브레이킹 체인지(변경 사항) 여부 (선택.. 2024. 11. 9. [JAVA] 객체의 정렬 자바에서 객체를 정렬하는 방법을 몇 가지 예시로 설명해 줄게요. 코딩 테스트에서는 Comparable과 Comparator 인터페이스를 자주 사용하게 됩니다. 1. Comparable 인터페이스 구현하기 Comparable 인터페이스는 객체 자신을 다른 객체와 비교할 때 사용합니다. 보통 오름차순 정렬을 할 때 많이 사용되며, 클래스 내부에서 기본 정렬 기준을 정의하게 됩니다.import java.util.Arrays;class Student implements Comparable { String name; int score; public Student(String name, int score) { this.name = name; this.score = score.. 2024. 11. 8. [Spring] 예시를 통한 BaseResponse 학습하기 BaseResponse 클래스는 주로 API의 응답 형식을 표준화하여 모든 API가 일정한 구조를 가질 수 있게끔 설계된 응답 포맷 클래스입니다. REST API의 응답에서는 데이터뿐만 아니라 성공 여부, 메시지, 에러 상태를 함께 제공해야 하는 경우가 많기 때문에 BaseResponse와 같은 구조화된 응답 형식이 필요합니다. BaseResponse의 주요 역할 1. 응답 형식 표준화API 호출 결과가 성공했는지 실패했는지, 에러가 발생했을 때 에러에 대한 세부 정보를 클라이언트가 일관되게 받을 수 있습니다. 2. 성공 및 에러 메시지 통합 관리클라이언트는 success 필드를 통해 성공 여부를 확인하고, type과 message를 통해 에러 유형 및 메시지를 확인할 수 있습니다. 3. 개발 효율성 .. 2024. 11. 7. [Spring] RuntimeException을 통한 CustomException RuntimeException은 Java에서 런타임 시 발생할 수 있는 예외를 처리하는 기본 클래스입니다. RuntimeException은 unchecked 예외로, 이를 상속한 예외는 컴파일 시 예외 처리를 강제하지 않으며, 주로 개발자의 실수나 예측하지 못한 상태에서 발생하는 예외를 다룹니다. RuntimeException을 상속하여 커스텀 예외를 만들면 특정 오류 상황을 더 구체적으로 다룰 수 있고, 개발자에게 명확한 예외 정보를 제공합니다. CustomException 클래스와 ExceptionType 열거형을 통한 RuntimeException의 커스터마이징 주어진 예시에서는 CustomException과 ExceptionType 열거형을 정의하여 다양한 유형의 예외를 하나의 커스텀 예외 클래스.. 2024. 10. 31. 이전 1 ··· 4 5 6 7 8 9 10 ··· 30 다음