Bean Validation API
·
java/spring
Bean들의 유효성 검증을 위한 APIBean의 유효성 검증은 매우 중요하다. 각 Bean마다 유효성 검증 로직을 구현하기에는 비효율 적이기에 Bean Validation API를 통해서 간단하게 유효성 검증을 하도록 설계할 수 있다.즉, Domain-Model 제약 조건을(Constraints) 선언함으로써 Validation 로직을 여러 레이어에서 분리 시키려는 것이 Bean Validation API의 핵심 목표이다. Bean Validation API 유효성 검증 관련 메커니즘아래의 구성요소를 따르면 보다 직관적으로 유효성 검증을 하는 것을 볼 수 있다. [제약 조건]Domain Model에 Contraint 어노테이션을 부여한다.해당 Constraint 에 명시된 유효성 검증 로직(isValid..
Gradle 파일 뜯어보기
·
java/build
1. gradle-wrapper.properties 쓰임새Gradle Wrapper의 동작방식을 설정하는 파일Gradle Wrapper란 개발자들인 특정 gradle 버전으로 고정하여 동일한 환경에서 작업할 수 있도록 돕는다. 쓰임 예시distributionBase=GRADLE_USER_HOMEdistributionPath=wrapper/distsdistributionUrl=https\\://services.gradle.org/distributions/gradle-8.11.1-bin.zipnetworkTimeout=10000validateDistributionUrl=true/zipStoreBase=GRADLE_USER_HOMEzipStorePath=wrapper/distsdistributionBase=G..
얕은 복사 & 깊은 복사
·
java
1. 얕은 복사 & 깊은 복사란?얕은 복사 (Shallow copy) : 주소 값을 복사하는 행위깊은 복사 (Deep copy) : 해당 주소의 실제 메모리에 저장된 값을 복사하는 행위int[] a = {1,2,3}// 얕은 복사int[] b = a; // 깊은 복사int[] c = a.clone(); orint[] c = new int[3];for(int i = 0; i  2. clone()시 주의할 점clone()은 객체의 주소의 실제 값들을 저장해주는 메서드이나, 메모리안에 주소가 저장된 경우 깊은 복사가 안 된다. 아래 비교 코드를 보면 알 수 있다.public class Main { public static void main(String[] args) { int[][] a = ..