반응형 JAVA & KOTLIN14 [JAVA] UUID Version 7은 어떻게 사용할까? UUID Version 7은 최근에 추가된 표준으로, Unix Epoch 시간 기반의 고유 식별자를 생성하기 위한 UUID 버전이다. 이 버전은 순차적으로 증가하는 값을 사용하여 시간 순서에 따라 정렬 가능한 특성을 제공한다. Version 7 UUID는 2022년에 IETF RFC 4122의 초안을 통해 도입되었으며, 최신 애플리케이션의 요구를 충족시키기 위해 설계되었다. UUID Version 7: 주요 특징시간 기반:Unix Epoch 시간(1970년 1월 1일 00:00:00 UTC)을 기준으로 48비트 정밀도를 가지는 타임스탬프를 포함합니다.밀리초 단위로 타임스탬프가 기록되며, 정렬 가능한 UUID 생성이 가능하다.순차성:시간 기반으로 생성되므로 정렬이 가능(time-ordered)하여 데이터베.. 2024. 12. 30. [JAVA] Java Instant 주요 메소드 Java 8에서는 날짜와 시간을 다룰 수 있는 새로운 API인 java.time 패키지가 도입되었다. 이 중 Instant 클래스는 기계 시간(UTC 기준의 타임스탬프)을 표현하는 데 사용된다. 나노초 정밀도로 시간을 표현하며, 주로 타임스탬프 기반 작업에 유용하다다. 주요 메소드와 예제를 통해 살펴보겠습니다. JAVA Time 관련 포스팅2024.12.17 - [JAVA] - [JAVA] java 1.8에서 변경 된 time [JAVA] java 1.8에서 변경 된 timeJava 8 이상이 되면서 Date, Calandar 등이 레거시가 되어 버리고 java.time의 Instant, LocalDateTime, ZoneDateTime이 추가되었다. Date, Calendar 클래스의 문제점불변 객체가.. 2024. 12. 24. [SPRING] Spring @Transactional Transaction데이터베이스 관리 시스템 또는 유사한 시스템에서 상호작용의 단위이다.여기서 유사한 시스템이란 트랜잭션이 성공과 실패가 분명하고 상호 독립적이며, 일관되고 믿을 수 있는 시스템을 의미데이터의 정합성을 보장하기 위해 고안된 방법 Transaction 특징원자성(Atomicity)한 트랜잭션 내에서 실행한 작업들은 하나로 간주한다. 즉, 모두 성공 또는 모두 실패일관성(Consistency)트랜잭션은 일관성 있는 데이터베이스 상태를 유지한다. (data integrity 만족 등.)격리성(Isolation)동시에 실행되는 트랜잭션들이 서로 영향을 미치지 않도록 격리해야 한다.지속성(Durability)트랜잭션을 성공적으로 마치면 결과가 항상 저장되어야 한다. Spring에서 트랜잭션 처리 .. 2024. 12. 22. [KOTLIN] Kotlin에서 Value Object 언제 사용할까? Kotlin에서는 Value Object를 사용하여 데이터를 안전하게 캡슐화하고, 코드의 가독성과 유지보수를 향상시킬 수 있다. Value Object란 특정 도메인에서 의미를 가지는 값을 표현하기 위해 설계된 객체로, 데이터를 단순히 묶는 것뿐 아니라, 유효성 검사를 포함한 다양한 로직을 내부에 캡슐화한다.Spring을 활용하면 Value Object를 통해 들어오는 요청 데이터를 검증할 수 있으며, 도메인 로직의 일관성을 유지할 수 있다. 1. Value Object란?Value Object는 값 그 자체로 식별되는 객체이다. 예를 들어, 이메일 주소, 전화번호, 금액과 같은 값들은 각각 독립적인 의미를 가지며, 이를 Value Object로 정의하면 다음과 같은 이점을 얻을 수 있다:도메인 로직 캡.. 2024. 12. 21. [JAVA] java 1.8에서 변경 된 time Java 8 이상이 되면서 Date, Calandar 등이 레거시가 되어 버리고 java.time의 Instant, LocalDateTime, ZoneDateTime이 추가되었다. Date, Calendar 클래스의 문제점불변 객체가 아니라 thread-safe 하지 않음날짜 단위의 계산이 불편함표준 시간에 대한 기준이 모호함 Legacy에서 마이그레이션시 추천 타입 JDBC에서 변경되는 형태 Instant 1970년 1월 1일 UTC의 첫 번째 순간 이후의 현재 시간까지의 나노초를 나타낸 값일반적으로 순간을 표현할 때 사용하며, Unix Timestamp를 구할 때 사용할 수 있다.Unix Timestamp를 사용하는 이유는 숫자 자료형을 가지고 연산을 하기 때문에 Local/Offset/Zoned.. 2024. 12. 17. [KOTLIN] Kotlin by 키워드: 상속보다 위임을 선택해야 하는 이유 Kotlin by 키워드: 상속보다 위임을 선택해야 하는 이유Kotlin은 간결하고 효율적인 코드를 작성하도록 돕는 다양한 언어적 기능을 제공한다.그중에서도 by 키워드는 위임(delegation)을 손쉽게 구현할 수 있게 해주는 도구로, 객체지향 프로그래밍과 합성(composition)의 이점을 극대화할 수 있도록 설계되었다.이번 포스팅에서는 Kotlin의 by 키워드 사용법과 왜 상속보다 위임을 사용하는 것이 더 나은 선택인지를 중심으로 살펴본다. 1. 상속보다 위임을 선호해야 하는 이유1.1 상속의 한계와 문제점상속은 객체지향 프로그래밍에서 널리 사용되는 도구이다. 이를 통해 부모 클래스의 기능을 자식 클래스가 물려받아 재사용성을 극대화할 수 있다. 하지만 상속은 몇 가지 단점을 내포하고 있다.강.. 2024. 12. 16. 이전 1 2 3 다음