728x90
🧐 캐싱 방식 사용 시에 메모리 사용량을 최소화하는 방법은 무엇일까? @Test @DisplayName("메모리 사용량을 최소화하는 방법은 무엇일까?") void 메모리_사용량을_최소화하는_방법은_무엇일까() { // TODO: 메모리 사용량을 최소화하는 방법을 고민 후 개선해보세요. record Position(int value) { private static final Map CACHE = new ConcurrentHashMap(); public static Position startingPoint() { return valueOf(0); } public..
개발 중 RequestDto를 생성할 때, 값 검증을 위해 @NotBlank, @NotNull, @NotEmpty와 같은 어노테이션을 사용하는 경우가 많다. 해당 어노테이션은 Spring Validation 라이브러리에 포함되어있으며, 아래 코드를 build.gralde에 넣어 추가할 수 있다. build.gralde implementation 'org.springframework.boot:spring-boot-starter-validation' UserRequestDto.java public class UserLoginRequestDto { @Email(message = "이메일 형식에 맞지 않습니다") @NotBlank private String email; /*생략*/ } 위는 DTO에 @NotBl..
자바 Comparable Interface 자바로 개발을 하다보면 Domain 클래스 구현을 위해 primitive 타입 자료형을 감싸는 경우가 있다. primitive 타입이 다음과 같이 Domain클래스로 Wrapping될 경우 외부에서 따로 처리해주어야 하던 값 검증 로직을 클래스 내부에 작성하여 생성자를 통해 객체 생성 시에 값 검증까지 처리할 수 있다는 장점이 생긴다. public class User { private int age; private String name; public User(int age, String name){ this.age = age; this.name = name; } } User user1 = new User(10,'sj'); User user2 = new User(..
서울시 IoT 해커톤 수상작인 B-Map을 리팩터링 하던 도중 비효율적인 코드를 수정하는 과정에서 일반 Dto객체를 Map형식으로 변환해야할 일이 생겼고 바로 이 때! ObjectMapper를 사용했다. ObjectMapper의 convertValue() 메서드를 사용하면 객체를 다른 형식의 객체로 변환할 수 있다. 기억해두면 유용할 것 같아 기록을 남겨본다. toMap() 사용 위와 같이 일반 Dto객체를 Map 객체로 변환하기 위해 ObjectMapper를 사용하였다. AmenityRequestDto - toMap() public Map toMap(){ ObjectMapper objectMapper = new ObjectMapper(); HashMap result = objectMapper.conve..
자바 :: 여러 데이터를 저장하는 법 - Array, List, Map :: 여러 데이터를 저장할 수 있도록 해주는 기능은 자바에 대표적으로 3가지가 있다. 이번 시간에는 그 3가지의 사용법에 대해 소개하는 시간을 갖도록 하겠다. 1. Array (배열) 배열은 같은 종류의 데이터를 하나의 공간에 저장할 수 있도록 해주는 기능이다. 배열의 크기는 처음 선언 시에 입력하게 되며 .length로 배열의 크기를 확인할 수 있다. 인덱스는 0번부터 시작이다. ex) new int[10] -> 인덱스 0~9번 :: 선언 :: 위와 같이 자료형[] 로 선언하거나 배열 생성 시에 값을 초기화하면서 생성할 수 있다. :: 초기화 :: 배열을 초기화할 때는 값을 삽입할 배열의 인덱스를 선택 후 삽입이 가능하다 ex) i..
🌳 SOLID 원칙 오늘은 객체지향 개발의 5가지 원칙인 SOLID 원칙에 대해 공부해보았다. S,O,L,I,D 는 각각 단어의 첫 글자이며 합하여 솔리드 원칙이라고 부른다. 지금부터 솔리드 원칙에 대해 알아보자. 🌱 SRP ( Single Responsibility Principle ) SRP는 Single Responsibility Principle 의 약자이며 말그대로 단일 책임 원칙을 뜻한다. 하나의 클래스는 하나의 책임만 가져야 한다는 원칙이다. 하나의 책임이라는 것은 굉장히 모호한 표현이다. "클 수도 있고 작을 수도" 있으며 "문맥과 상황에 따라" 다르다. 중요한 기준은 변경이다. 변경이 있을 때 파급 효과가 크다면 단일 책임 원칙을 제대로 지키지 못한 것이 된다. 🌱 O..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.