맥북에서 자바 개발 환경 셋팅
맥북에서 자바 개발 환경 셋팅인텔리제이 키 먹통 해결1defaults write -g ApplePressAndHoldEnabled -bool false 파인더에 숨김파일 표시12345defaults write com.apple.finder AppleShowAllFi ...
Read more
Web on Reactive Stack(Spring WebFlux Reactive Core)
Reactive Core이 spring-web모듈에는 사후 대응 웹 응용 프로그램에 대한 다음과 같은 기본 지원이 포함되어 있습니다. 서버 요청 처리에는 두 가지 레벨의 지원이 있습니다. HttpHandler : Reactor Netty, Undertow, Tomc ...
Read more
Web on Reactive Stack(Spring WebFlux 개요)
Web on Reactive Stack이 부분에서는 Netty, Undertow 및 Servlet 3.1+ 컨테이너와 같은 비 차단 서버에서 실행하기 위해 Reactive Streams API를 기반으로 만들어진 리 액티브 스택 웹 응용 프로그램에 대한 지원을 다룹니다 ...
Read more
아이템 90. 직렬화된 인스턴스 대신 직렬화 프록시 사용을 검토하라.
이펙티브 자바아이템 90. 직렬화된 인스턴스 대신 직렬화 프록시 사용을 검토하라.직렬화 프록시 패턴의 한계 클라이언트가 멋대로 확장할 수 있는 클래스에는 적용할 수 없다. 객체 그래프에 순환이 있는 클래스에도 적용할 수 없다. 123456789101112131415 ...
Read more
아이템 89. 인스턴스 수를 통제해야 한다면 readResolve 보다는 열거타입을 사용하라.
이펙티브 자바아이템 89. 인스턴스 수를 통제해야 한다면 readResolve 보다는 열거타입을 사용하라.1234567891011121314package com.github.sejoung.codetest.serialization.singletonclass;public ...
Read more
아이템 88. readObject 메서드는 방어적으로 작성하라.
이펙티브 자바아이템 88. readObject 메서드는 방어적으로 작성하라.123456789101112131415161718192021222324252627282930package com.github.sejoung.codetest.serialization;import ...
Read more
아이템 87. 커스텀 직렬화 형태를 고혀해보라.
이펙티브 자바아이템 87. 커스텀 직렬화 형태를 고혀해보라.먼저 고민해보고 괜찮다고 판단될 때만 기본 직렬화 형태를 사용하라. 객체의 물리적 표현과 논리적 내용이 같다면 기본직렬화 형태라도 무방하다. 기본 직렬화 형태가 적합하다고 결정했더라도 불변식 보장과 보안을 위해 ...
Read more
아이템 86. Serializable을 구현할지는 신중히 결정하라.
이펙티브 자바아이템 86. Serializable을 구현할지는 신중히 결정하라.Serializable 구현의 문제점 Serializable을 구현하면 릴리스한 뒤에는 수정하기 어렵다. 버그와 보안 구멍이 생길 위험이 높아진다. 해당 클래스의 신버전을 릴리스할 때 테스 ...
Read more
아이템 85. 자바 직렬화의 대안을 찾으라.
이펙티브 자바아이템 85. 자바 직렬화의 대안을 찾으라.12345678910111213141516171819202122232425262728293031323334353637package com.github.sejoung.codetest.serialization;impo ...
Read more
아이템 84. 프로그램의 동작을 스레드 스케줄러에 기대하지 말라.
이펙티브 자바아이템 84. 프로그램의 동작을 스레드 스케줄러에 기대하지 말라.정확성이나 성능이 스레드 스케줄러에 따라 달라지는 프로그램이라면 다른 플랫폼에 이식하기 어렵다. 스레드는 당장 처리해야 할 적업이 없다면 실행돼서는 안된다. 1234567891011121314 ...
Read more