일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 일상
- enumSet
- backend
- Coputer Science
- JPA
- 소프티어
- Service 계층 테스트
- 공룡책
- FCM
- Test code
- ExceptionResolver
- MySQL
- db
- softeer
- JPQL
- Server
- Junit 5
- proxyFactory
- 인프콘2023
- OS
- modelmapper
- Java
- RequestBody
- Test Doulbe
- mapstruct
- 자바
- 테크쇼
- Test
- ObjectMapper
- Spring
- Today
- Total
목록Java (5)
공부내용공유
서론 프로젝트를 진행하다 보면 Enum은 한번쯤은 꼭 사용하게 되는 타입이다. 맨 처음 프로젝트에서 Enum을 사용할 때는 단순히 열거를 위해서만 사용하고 타입 안정성을 위해서 사용하는구나 하고 넘어갔었는데 다른 프로젝트를 진행하면서 받은 리뷰를 통해 Enum의 다양한 활용법, Enum을 위한 특별한 (java의) 자료구조등을 알게되었다. 이번 글에서는 Enum에 대한 설명보다는 Enum을 어떤식으로 활용할 수 있는지, Enum을 사용할 때 알고있으면 좋은 자료구조에 대해 주로 다룰 예정이다. 본론 Enum 기본 활용 일단 가장 기본적인 Enum 사용법을 보자 public enum Message { NORMAL, ENCRYPTED, ANONYMOUS, RESERVATION, KAKAO } 이렇게 사용했을..
서론 자바로 알고리즘 문제를 풀면서 Integer , String 을 HashMap 자료구조를 사용하여 해결해야 하는 문제를 풀고 있었다. 이때 디버깅 및 간단한 실험을 위해 Integer 끼리 동등 연산자를 사용하여 비교하는 코드를 돌렸다. 내가 공부했던 wrapper class 는 Inerger a = 100 은 new Integer(100); Integer b = 100 또한 new Inteher(100); 이므로 a==b 는 false 가 나올거라 생각했는데 True 가 나왔다. 왜 그럴까를 찾아보고 알게된 사실을 정리하였다. 본론 Integer class 를 스르륵 훓어 봤는데 수상한걸 발견했다. 해당 부분의 코드를 보고 검색을 해본 결과. Integer class 는 -128 부터 128 까지..
서론 Repository 계층 테스트 코드를 작성할때 처음에는 어플리케이션에서 사용중인 MySQL DB를 그대로 사용하였다. 그러다가 한 테스트에서 로컬에 저장되어 있던 데이터에 의해 테스트가 실패하였고, 물론 값을 바꿔주면 테스트를 통과하긴 하겠으나 이 테스트가 다른 사람 pc에서 안깨지려면 테스트 DB를 분리하는게 맞겠다는 생각이 들었다. Spring 으로 프로젝트를 진행할때 local DB 나 Test DB 로 H2 를 많이 사용하기에 나도 H2 DB 로 설정을 바꿔주고 테스트를 돌렸다. 그런데 잘만 돌아가던 테스트들이 깨지는 케이스가 발생했다. 이를 기억하고 앞으로 코드를 작성할때 주의해야겠다는 생각이 들어 이 글을 작성하였다. 본론 테스트가 깨진 경우는 2가지 였다. native query 사용..
서론 Deque를 사용하면서 아무생각 없이 ArrayDeque를 사용하고 있었는데 다른 코드에서 LinkedList 로 Deque를 구현한것을 보았고 또 Deque 구현체가 꽤 많은것을 알게되었다. Deque 구현체들에 대해 간단히 조사하고 정리하고, ArrayDeque와 LinkedListDeque 사이에 차이가 있고 무엇이 더 효율적일지 찾아보면서 이 글을 작성하게 되었다. 본론 Deque 란? 간단하게 Deque에 대해 설명하자면 원소의 추가와 삭제를 양쪽 끝부분에서 지원하는 자료구조이다. Deque는 사용자가 입구로만 나오고 삭제하게 하면 stack으로 입구로만 들어가고 출구로만 나오면 queue 로 사용할 수 있다. Java 에서 Deque 자바에서 Deque는 인터페이스로 되어져 있고 이를 구..
서론 지금까지 알고리즘 문제를 python으로만 해서 문제를 풀 때 자료형에 관해서 크게 고민을 하면서 푼적이 없었다. 요즘 자바로도 코딩 테스트 연습을 하고 있는데 array 와 list 를 언제 쓰고 어떻게 쓰는지에 대해 이해도가 부족함을 느껴 정리하고자 이 글을 작성하였다. 목차 Array 란 List 란 장,단점 활용법 본론 Array 란? 여러 데이터들이 index (식별자) 와 값으로 구성된 자료구조 index 는 유일한 식별자이다. 논리적 저장 순서와 물리적 저장 순서가 동일하다 index를 통한 접근이 O(1) 이다. 캐시 hit 가 일어나기 좋다 초기에 크기를 정하고 , 컴파일 이후 크기 변경이 불가능 하다. 연속된 메모리 공간으로 이루어져 있다. List 란? 순서가 있는 엘리먼트의 모..