전체 글
-
[JAVA] 배열의 중복 요소 제거하기Java/Collection(컬렉션) 2024. 9. 17. 16:53
목차 자바에서는 배열의 중복 요소를 제거하는 여러 가지 방법이 있습니다. `HashSet`을 사용하는 방법, `Stream API`를 사용하는 방법, 그리고 중첩 루프를 사용하는 방법이 있습니다. 1. HashSet을 사용하여 중복 제거`HashSet`을 사용하는 것은 배열의 중복 요소를 제거하는 가장 간단하고 효율적인 방법 중 하나입니다. `HashSet`은 중복 요소를 허용하지 않기 때문에 쉽게 중복을 처리할 수 있습니다./** * HashSet을 사용한 중복 제거 * * @param array 중복된 요소를 제거할 정수형 배열 * @return 중복이 제거된 새로운 배열, 입력 배열이 null인 경우 null 반환 */public int[] removeDuplicatesUsingSet(int[] a..
-
[JAVA] 배열 회전하기Java/Collection(컬렉션) 2024. 9. 17. 16:52
목차 자바에서는 배열을 회전시키는 여러 가지 방법이 있습니다. 전통적인 for 문, 스트림 API, 그리고 헬퍼 메서드를 사용하는 방법이 있습니다. 1. 반복문을 사용하여 배열을 회전전통적인 for 문를 사용하여 배열을 회전하는 방법은 직관적이고 간단합니다./** * 반복문을 사용하여 배열을 회전 * * @param nums 회전할 배열 * @param k 회전할 위치 수 * @return 회전된 배열 */public int[] rotateWithLoop(int[] nums, int k) { int n = nums.length; if (n == 0) { return nums; } k = k % n; int[] rotated = new int[n]; for (int i = 0; i 단..
-
[JAVA] 배열의 합 구하기Java/Collection(컬렉션) 2024. 9. 17. 16:52
목차 자바에서는 배열의 합을 구하는 여러 가지 방법이 있습니다. 전통적인 for 문, 향상된 for 문, 스트림 API, 재귀 호출, 그리고 Arrays.parallelPrefix 메서드를 사용하는 방법이 있습니다.1. 전통적인 for 문를 사용한 합 구하기전통적인 for 문을 사용하여 배열의 합을 구하는 방법은 직관적이고 간단합니다./** * 배열의 합을 전통적인 for 루프를 사용 * * @param array 합을 구할 배열 * @return 배열 요소들의 합 */public int sumUsingForLoop(int[] array) { int sum = 0; for (int i = 0; i 단위 테스트@Order(1)@DisplayName("sumUsingForLoop: 배열 요소들의 합")@..
-
[JAVA] 배열 검색하기Java/Collection(컬렉션) 2024. 9. 17. 16:52
목차 자바에서는 배열을 검색하는 다양한 방법이 있습니다. 이번 문서에서는 배열을 검색하는 여러 가지 방법에 대해 설명하겠습니다. 주요 메서드로는 순차 검색, 이진 검색, 라이브러리 메서드를 사용한 검색, 그리고 2차원 배열에서 값의 존재 여부를 확인하는 방법이 있습니다. 추가로 배열에서 최대 및 최소값을 찾는 방법도 설명하겠습니다. 1. 순차 검색순차 검색을 사용하여 배열에서 특정 값을 찾는 방법입니다. 배열의 첫 번째 요소부터 시작하여 찾아야 하는 값을 순차적으로 비교합니다./** * 순차 검색을 사용하여 배열에서 특정 값을 찾음 * * @param array 검색할 배열 * @param value 검색할 값 * @return 배열에서 값의 인덱스 (존재하지 않으면 -1) */public int lin..
-
[JAVA] 배열 정렬하기 : 오름차순, 내림차순Java/Collection(컬렉션) 2024. 9. 17. 16:52
목차 자바에서는 배열을 정렬하는 다양한 방법이 있습니다. 이번 문서에서는 Arrays.sort, Arrays.parallelSort 메서드 등을 사용하여 배열을 오름차순 및 내림차순으로 정렬하는 방법을 기본과 병렬 방식으로 구분하여 설명하겠습니다. 1. 정수 배열을 오름차순 정렬Arrays.sort 메서드를 사용하여 정수 배열을 오름차순으로 정렬합니다./** * Arrays.sort 메소드를 사용하여 배열을 오름차순으로 정렬 * * @param arr 정렬할 배열 * @return 정렬된 배열 */public int[] arraySortAscending(int[] arr) { Arrays.sort(arr); return arr;}단위 테스트@Order(1)@DisplayName("arraySortAs..
-
[Java] ModelMapper를 활용한 객체 변환Java/기타 2024. 8. 17. 10:22
org.modelmapper 라이브러리는 복잡한 객체를 단순화하거나, 단순한 객체를 복잡하게 변환하는데 유용합니다. 이번 포스트에서는 두 가지 주요 변환 방식인 Flattening과 Projection을 통해 ModelMapper의 사용법을 알아보겠습니다.1. 라이브러리 추가com.jayway.jsonpath:json-path:2.9.0는 Java에서 JSON 데이터를 다루기 위해 사용하는 라이브러리입니다. Gradle 설정build.gradle 파일에 다음과 같이 의존성을 추가합니다.// ModelMapperimplementation 'org.modelmapper:modelmapper:3.2.1'Maven Repository : https://mvnrepository.com/artifact/org.mo..
-
[Java] JSONPath로 JSON 데이터 다루기Java/기타 2024. 8. 17. 10:07
JSONPath는 JSON 데이터를 효율적으로 탐색하고, 특정 값을 추출하거나 필터링하는 쿼리 언어입니다. 이번 포스트에서는 com.jayway.jsonpath 라이브러리 사용하여 Java에서 JSON 데이터를 다루는 방법을 살펴보겠습니다.JSONPath 개요JSONPath는 JSON 문서를 대상으로 SQL과 유사한 구문을 사용하여 JSON 데이터의 특정 값을 추출할 수 있습니다. 대표적인 JSONPath 구문은 다음과 같습니다.JSON 경로 설명JSON 경로설명$루트 객체를 나타냅니다.@현재 객체를 나타냅니다.. 또는 [] 자식을 나타냅니다.*모든 요소를 나타냅니다... 모든 하위 요소를 재귀적으로 탐색합니다.?()필터링 조건을 나타냅니다. 1. 라이브러리 추가com.jayway.jsonpath:jso..
-
[Spring Boot] OpenSearch 연동Spring Boot/기타 2024. 7. 12. 23:27
1. Docker를 사용하여 OpenSearch 설치 및 실행1_1. OpenSearch 설치 Docker를 사용하여 로컬에 Opensearch를 설치하세요.docker pull opensearchproject/opensearch:1.3. 1_2. OpenSearch 실행 OpenSearch Docker 이미지를 다음의 명령어를 실행하여 로컬에서 실행하세요.docker run -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node" -e DISABLE_SECURITY_PLUGIN=true opensearchproject/opensearch:1.3.171_3. OpenSearch 실행 상태 확인 OpenSearch가 정상적으로 실행되고 있는지 확인할 수 있습니..
-
[JAVA] 12주차 과제 : 애노테이션Java/온라인 자바 스터디 2024. 4. 11. 18:56
목표 자바의 애노테이션에 대해 학습하세요. 학습할 것 (필수) 애노테이션 정의하는 방법 @retention @target @documented 애노테이션 프로세서 애노테이션 정의하는 방법 자바 애노테이션은 코드 사이에 메타데이터를 제공하는 방법으로, 주석보다 더 많은 기능을 합니다. 이는 소스 코드에 추가할 수 있는 특수한 형태의 '주석'이며, 코드에 정보를 제공하거나 컴파일러에게 특정 동작을 수행하도록 지시하는 등의 목적으로 사용됩니다. 애노테이션은 @interface 키워드를 사용하여 정의합니다. @interface는 자바의 키워드 중 하나로, 애노테이션 정의를 생성하는데 사용됩니다. 다음은 기본적인 애노테이션 구문입니다. public @interface MyAnnotation { // 애노테이션 요..
-
[Spring Boot] Spring Cloud Config 연동Spring Boot/기타 2024. 3. 7. 23:35
Spring Cloud Config란?Spring Cloud Config는 애플리케이션의 설정 정보를 외부 저장소(GitHub Repository, File System 등)에서 가져와서 한 곳에서 관리하는 데 도움을 주는 라이브러리입니다. 장점애플리케이션의 모든 설정을 한 곳에서 관리할 수 있으며, 이를 통해 일관성을 유지하고 관리 용이성을 향상할 수 있습니다.설정값을 변경하고, 이러한 변경 사항은 애플리케이션의 재배포 없이 실시간으로 적용할 수 있습니다.단점외부 저장소(GitHub Repository, File System 등)에서 설정 정보를 가져오는데, 이러한 저장소에 장애가 발생하면 해당 설정 정보를 참조하는 시스템에 장애가 전파될 수 있습니다.설정 파일의 우선순위 따라 의도치 않은 설정값이 적..