(byte)167이 -89로 표시되는 이유
Java 언어로 TCP 소켓을 통해 IP 정보를 바이트 배열로 전송하는 로직을 구현하고 있었다. 숫자 167을 바이트 배열에 담아 전송하기 위해서…
Java 언어로 TCP 소켓을 통해 IP 정보를 바이트 배열로 전송하는 로직을 구현하고 있었다. 숫자 167을 바이트 배열에 담아 전송하기 위해서…
컨텍스트 캐싱 스프링부트를 사용해 개발된 애플리케이션은 구동할 때 애플리케이션 컨텍스트와 필요한 것들을 미리 준비하는 시간이 소요됩니다. Junit5 를 사용하여 통합…
이번 글에서는 Junit5와 함께 Spring Test Context Framework를 사용해서 통합 테스트 코드 작성 시 자주 사용하는 애너테이션에 대해 알아보겠습니다. Spring이…
이번 글에서는 LocalDateTime.now(ZoneId)이 생각하는 대로 동작하는지 확인하기 위해 테스트 코드를 작성했던 일에 대해서 알아보겠습니다. Java8 부터 제공되는 유틸 클래스인 LocalDateTime이…
이번 글에서는 Json 파싱을 위한 라이브러리 중 하나인 jackson-databind에서 제공하는 ObjectMapper 객체를 사용하는 방법을 정리해보겠습니다. ObjectMapper 객체는 JSON 문자열을 파싱해서…
Java에서 지원하는 람다와 스트림은 코드를 더 간결하고 유지보수하기 좋은 코드를 작성하는 데 큰 도움이 됩니다. 이번 글에서는 람다와 Stream 예제…
어떤 객체가 예상치 못하게 null이 되었을 때 그 객체의 메서드를 호출하면 NullPointerException이 발생합니다. 그래서 우리는 메서드를 호출하기 전에 객체가 null인지…
Spring Cloud OpenFeign은 스프링에서 제공하는 오픈소스 HTTP Client 입니다. 애플리케이션 내부적으로 다른 시스템과 HTTP 통신을 해야 할 때 간편하게 사용할…
이번 글에서는 jjwt(Java Json Web Token)라는 오픈소스 라이브러리를 사용해서 JWT를 생성하고 검증하는 방법을 알아보겠습니다.jjwt 사용 방법을 이해하실 수 있도록 기본적인…
스프링부트를 사용해 웹 애플리케이션을 운영하다 보면 특정 클래스의 로깅 레벨을 변경하고 싶을 때가 있습니다. 스프링부트에서 모든 클래스의 로깅 레벨을 변경하는…