본문 바로가기

Java47

자바 GC 정리 자바 GC 정리 GC 란 가비지 컬렉터이며, 자바에서 메모리를 정리하는 기법 Minor GC, Major GC 가 있음. Minor GC Heap 은 크게 Young 과 Old 영역이 있음. Young 부분에서 메모리가 꽉찼을 때, 발생하는게 Minor GC Young 은 Eden, Survivor 영역이 있으며, Eden 영역이 꽉차면 Survivor 영역으로 옮김. (Minor GC 발생) Survivor 영역이 꽉차면 Old 영역으로 옮김. Minor GC 는 Stop the world 가 발생. Stop the world 란 GC 를 위해 가비지 컬렉터 이외의 스레드가 멈춘다는 것을 의미. 너무 짧아서 STW 가 안일어나는 것처럼 보임. Major GC OLD 영역이 꽉찼을 때, 발생. Minor.. 2020. 11. 13.
java primitive vs wrapper 설명 java primitive vs wrapper 설명 primitive 타입은 int, boolean, char 등을 의미함. 자바 기본형 타입들임. wrapper 타입은 위 기본 타입들을 참조형 형태로 만든 것임. 그럼 각각 언제 사용하는가? 기본형 타입들을 사용할 때도 있지만, 이런 기본형 타입들을 객체형태로 받을 떄도 있다. 또한, 아규먼트로 받거나. 객체 간의 비교가 필요할 때도 있음. 오토박싱, 언박싱 오토박싱은 기본형을 참조형으로 변환. 참조형을 기본형으로 변환은 언박싱 Integer I = 10; // 오토박싱 (autoboxing) Integer i = 10; int a = i; // 언박싱 주로 List, Map 과 같은 Collection 에서 박싱이 많이 일어나겠지. 단, 오토 박싱, .. 2020. 11. 12.
apache http utils 예제 apache http utils 예제 json 문자를 http post 방식으로 보내는 예제 라이브러리 https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient/4.5.12 source CloseableHttpClient client = HttpClients.createDefault(); HttpPost httpPost = new HttpPost("http://localhost:8080/test"); String json = "{"test:test"}"; HttpEntity stringEntity = new StringEntity(json, ContentType.APPLICATION_JSON); httpPost.setEntity(st.. 2020. 11. 8.
java Optional 설명 java Optional 설명 Optional.empty() null을 담고 있는, 한 마디로 비어있는 Optional 객체를 가져옴. 비어있는 객체는 Optional 내부적으로 미리 생성해놓은 싱글턴 인스턴스. isPresent 하면 false 로 찍힘. Optional.of(value) value 를 받아 Optional 객체를 생성. value 가 null 일 경우, NPE를 던짐. 그러니 반드시 null 이 아닌 객체일 때만 이것을 쓰자. Optional.ofNullable(value) value 가 null 인지 아닌지 모를 때 사용. null 이면 Optional 비어있는 객체를 만들고, value 가 있으면 해당 객체를 가지고 만듬. 2020. 11. 7.