31 posts tagged "java"
view all tags자바8 스트림 사용해서 max, min 값 찾기
1. 들어가며 자바8의 스트림 API를 사용해서 List나 배열에서 max, min 값을 찾는 방법에 대해서 알아보자. 2. 스트림을 사용하여 max 값 찾기 2.1 숫자 List에서 Max 값 찾기 : 숫자 List에서 max…
October 25, 20203 mins자바 자료구조 - Priority Queue (우선순위 큐)
1.Priority Queue (우선순위 큐)란? 자바에서 제공하는 여러 자료구조 중에 에 대해서 알아보자. 우리가 잘 알고 있는 자료구조와 같이 (First-In-First-Out) 알고리즘으로 동작하지만, 추가로 우선순위가 있는 (Best…
September 20, 20203 minsCustom Handler Method ArgumentResolver 만들어보기
1.HandlerMethodArgumentResolver란? 1.1 들어가면 에 대해서 알아보자. 아래와 같이 컨트롤러 메서드에 여러 인자 값(ex…
July 20, 20206 mins자바8 Stream API 사용해서 List of Object 생성하기
자바8에 도입된 스트림 API에 조금 더 익숙해지기 위해 loop으로 자주 사용하던 코딩을 스트림 API로 변환해보자. 1. Loop 사용해서 객체 리스트 생성하기 - 자바8 이전 자바8 전 버전에서는 아래와 같은 방식으로 for loop…
June 29, 20201 mins스프링부트 기본 에러 페이지 변경하기 - Customize Whitelabel Error Page
1. 들어가며 존재하지 않는 API를 접속하게 되면 아래와 같은 Whitelabel Error Page를 자주 접하게 됩니다. 별도 설정을 하지 않았다면 스프링부트에서는 기본적으로 Whitelabel Error Page…
June 03, 20205 mins자바8 스트림 사용해서 List -> Map 형태로 변환하는 방법
1. 들어가며 객체 를 형태로 변환할 때 아래와 같이 loop을 돌면서 에 내용을 채운다. 자바8에 도입된 스트림을 사용해서 -> Map으로 어떻게 변환하는지 알아보자. 2. List -> Map 변환 2.1 자바8에서 스트림 사용하여 List…
April 20, 20203 mins자바 Comparable과 Comparator의 차이점
자바에서 객체 정렬 시 사용되는 Comparator와 Comparable 인터페이스 간의 차이점을 알아보겠습니다. 예제로 작성한 코드는 github java-compare 모듈을 참고해주세요. Comparable vs. Comparator…
April 15, 20205 mins자바8 HashMap 보다 간결하고 효과적으로 작성하기
자바8부터 에 여러 메서드들이 추가되었고 이런 메서드를 사용해서 을 조금 더 간결하면서 효율적으로 사용하는 방법에 대해서 알아보겠습니다. 작성된 코드는 java8-hashmap을 참고해주세요. 1. putIfAbsent() vs…
March 01, 20205 mins추가된 LOG를 JUnit에서 확인하는 방법
1. 들어가며 Unit Test를 작성할 때 메서드의 결과를 기본적으로 확인하여 로직을 검증합니다. void…
November 18, 20192 mins[Quartz-3] Multi WAS 환경을 위한 Cluster 환경의 Quartz Job Scheduler 구현
1. 들어가며 Quartz에서는 메모리 기반의 스케줄러뿐만이 아니라 DB 기반의 스케줄러도 지원합니다. DB 기반의 스케줄러의 경우에는 스케줄러 정보를 메모리가 아닌 DB에 저장하기 때문에 다중 서버 간의 스케줄링이 가능합니다. Quartz…
October 13, 20199 mins스프링 RestTemplate
1. 들어가며 스프링 프레임워크에서는 REST 서비스의 Endpoint를 호출할 수 있도록 크게 2가지 방식인 동기, 비동기 REST Client을 제 공합니다. 이번 포스팅에서는 동기방식인 RestTemplate…
May 06, 201917 minsQ&A Lombok 관련 질문 모음
개인적으로 모르는 부분 적어두고 알게 되는 부분에 대해서 간단하게 정리해둔 자료입니다. 미 답변중에 알고 계신 부분 있으면 코멘트 달아주세요. 감사합니다. Q&A 전체 목록 답변완료 1. @AllArgsConstructor…
March 23, 20191 minsQ&A Java 관련 질문 모음
개인적으로 모르는 부분 적어두고 알게 되는 부분에 대해서 간단하게 정리해둔 자료입니다. 미 답변중에 알고 계신 부분 있으면 코멘트 달아주세요. 감사합니다. Q&A 전체 목록 미 답변 질문 - java8 에서 mapToInt(ToIntFunction…
March 21, 20194 minsJava Jayway JsonPath 사용법
1. 들어가며 Jayway JsonPath는 Stefan Goessner의 JsonPath 구현을 자바로 포팅한 라이브러리입니다. XML의 가장 큰 장점은 XPath(XML Path Language)로 XML…
January 19, 20197 minsSimple Spring Memcached(SSM)란
1. 들어가며 In-memory DB로 Memcached를 사용하면 자바에서는 simple-spring-memcached (SSM) 라이브러리를 자주 사용됩니다. SSM…
January 01, 201916 minsLombok 기본 사용법 익히기
1. 들어가며 Lombok는 자바에서 작성해야 하는 boilerplate code(ex. getter/setter, constructor, toString…
December 16, 20188 mins자바 커스텀 어노테이션 만들기
1. 어노테이션이란 스프링 프레임워크를 사용하면 어노테이션을 자주 사용하게 됩니다. 아래는 스프링 웹 MVC를 사용한 예로 GET HTTP 요청(/helloworld)이 있으면 “Hello World…
November 18, 20187 mins맥 환경에서 여러 JDK 버전 설치하고 변경하기
자바 개발을 하다 보면 하나의 JDK 버전이 아니라 여러 버전을 설치해야 할 때가 종종 있습니다. 진행하는 프로젝트마다 개발하는 JDK…
November 11, 20181 mins자바 Garbage Collection이란
1. 가비지 컬랙션이란? C/C++ 언어와 달리 자바는 개발자가 명시적으로 객체를 해제할 필요가 없습니다. 자바 언어의 큰 장점이기도 합니다. 사용하지 않는 객체는 메모리에서 삭제하는 작업을 Gargabe Collection(GC)라고 부르며 JVM…
October 17, 20189 mins새로운 기능 및 개선 사항 목록 - 자바10에서의 변화
자바10 언어 JEP 286: Local Variable Type Inference JVM/Compiler JEP 304: Garbage-Collector Interface JEP 307: Parallel Full GC for G1 JEP 31…
September 11, 20184 mins자바에서 final에 대한 이해
1. 개요 위와 같이 final 키워드를 떠올릴 때면 그냥 상수로만 생각할 때가 종종 있습니다. final…
September 11, 20184 mins새로운 기능 및 개선 사항 목록 - 자바Beyond에서의 변화
자바Beyond JEP 301: Enhanced Enums - 현재 보류중 JEP 302: Lambda Leftovers - Candidate JEP 305: Pattern Matching - Candidate JEP ???: Data Classes…
September 10, 20185 mins새로운 기능 및 개선 사항 목록 - 자바11에서의 변화
자바11 JEP 181: Nest-Based Access Control JEP 309: Dynamic Class-File Constants JEP 315: Improve Aarch64 Intrinsics JEP 318: Epsilon: A No-Op…
September 09, 20182 mins새로운 기능 및 개선 사항 목록 - 자바9에서의 변화
자바9 Java Platform Module System JEP 222: Jshell - REPL JEP 158: Unified VM logging JVM component에 대한 공통 로깅 시스템 제공 (-Xlog) HTML5 Javadoc HTML…
September 03, 20182 mins새로운 기능 및 개선 사항 목록 - 자바8에서의 변화
자바8 언어 람다식 표현 스트림 Method Reference Default Method Type inferece 개선 Optional 새 자바스크립트 엔진 (Nashorn) JDK11에서 제거될 예정 Joda Time 방식의 새 날짜 API…
September 02, 20181 mins전후처리를 위한 자바 메서드 래퍼 메서드 생성하기 - pre and post processing for java wrapper method
1.개요 코딩을 하다 보면 어떤 작업을 하기 전에 전후 처리가 필요할 때가 종종 생깁니다. 전처리(pre-processing)에서는 실제 작업을 수행하기 전에 필요한 세팅을 하고 후처리(post-processing)에서는 cleanup…
August 26, 20184 mins자바에서 클래스의 상속 구조에서 메서드 체이닝 해보기 - Method Chaining with Inheritance
1. 메서드 체이닝이란 메서드 체이닝이란 여러 메서드 호출을 연결해 하나의 실행문으로 표현하는 문법 형태를 말합니다. (위키피디아 참고 #4.1) 메서드 체이닝의 매직은 간단합니다. 체이닝으로 연결하고 싶은 메서드의 반환 값으로 this…
August 19, 20184 minsQ&A JsonPath 관련 질문 모음
개인적으로 모르는 부분 적어두고 알게 되는 부분에 대해서 간단하게 정리해둔 자료입니다. 미 답변중에 알고 계신 부분 있으면 코멘트 달아주세요. 감사합니다. Q&A 전체 목록 답변완료 1. com.jayway.jsonpath…
July 29, 20181 minsQ&A Maven 관련 질문 모음
개인적으로 모르는 부분 적어두고 알게 되는 부분에 대해서 간단하게 정리해둔 자료입니다. 미 답변중에 알고 계신 부분 있으면 코멘트 달아주세요. 감사합니다. Q&A 전체 목록 답변완료 1. maven으로 특정 클래스의 메서드 unit test…
July 29, 20182 mins[자바8-1] 자바8 Optional이란
1. Optional이란 Optional은 null을 대신하기 위해 만들어진 새로운 코어 라이브러리 데이터 타입입니다. Optional 클래스는 null이나 null이 아닌 값을 담을 수 있는 클래스입니다. 이미 다른 언어(ex. Scala…
July 29, 201810 minsQ&A Jackson 관련 질문 모음
개인적으로 모르는 부분 적어두고 알게 되는 부분에 대해서 간단하게 정리해둔 자료입니다. 미 답변중에 알고 계신 부분 있으면 코멘트 달아주세요. 감사합니다. Q&A 전체 목록 답변완료 1. @JsonInclude(Include.NON_NULL…
March 25, 20184 mins