반응형

전체 글 757

SQL LIKE 연산자

SQL LIKE 연산자는 데이터베이스에서 특정 패턴과 일치하는 값을 찾을 때 사용하는 매우 유용한 도구입니다. 마치 퍼즐 조각을 맞추듯, LIKE 연산자는 정확한 값 대신 패턴을 사용하여 데이터를 검색합니다.LIKE 연산자의 기본 구조SELECT column_nameFROM table_nameWHERE column_name LIKE 'pattern';column_name: 검색을 수행할 열의 이름입니다.table_name: 데이터를 검색할 테이블의 이름입니다.pattern: 일치시킬 패턴을 나타내는 문자열입니다.패턴 매칭에 사용되는 와일드카드LIKE 연산자에서 가장 중요한 부분은 와일드카드입니다. 와일드카드는 특정 문자나 문자열 집합을 나타내는 특수 문자로, 패턴을 더욱 유연하게 만들어줍니다.1. % (..

DB 2024.11.26

[JAVA] Gson을 활용한 기본 JSON 처리

Gson은 자바 객체와 JSON 간의 변환을 간단하게 처리할 수 있도록 해주는 강력한 라이브러리입니다. 이번 글에서는 객체를 JSON으로 변환하기, JSON을 객체로 변환하기, 기본 데이터 타입 변환에 대해 자세히 알아보겠습니다.객체를 JSON으로 변환하기 (toJson())Gson의 toJson() 메서드는 자바 객체를 JSON 형식으로 직렬화할 때 사용됩니다. 간단한 객체를 JSON 문자열로 변환하는 예제를 살펴보겠습니다.import com.google.gson.Gson;public class Main { public static void main(String[] args) { Gson gson = new Gson(); // 객체 생성 Pers..

JAVA 2024.11.25

[JAVA] Gson 환경 설정

Gson 라이브러리를 사용하려면 프로젝트 빌드 도구에 Gson 의존성을 추가해야 합니다. Maven과 Gradle은 자바 프로젝트에서 가장 널리 사용되는 빌드 도구로, 각각에서 Gson을 설치하는 방법은 아래와 같습니다.1. Maven을 사용한 설치프로젝트의 pom.xml 파일에 Gson 의존성을 추가합니다. com.google.code.gson gson 2.10.1추가 후 mvn install 명령을 실행하면 의존성이 다운로드되어 프로젝트에 추가됩니다.예제: Maven 프로젝트 구조project/├── pom.xml├── src/main/java/│ └── Main.javapom.xml 설정 후, 다음과 같이 Java 파일을 작성할 수 있습니다.import com.google.gso..

JAVA 2024.11.24

[JAVA] Gson 이란?

Gson은 Google에서 개발한 Java 기반의 JSON 처리 라이브러리입니다. 주된 목적은 JSON 데이터를 Java 객체로 변환하거나, Java 객체를 JSON 형식으로 직렬화하는 것입니다. Gson은 간결한 API와 높은 성능으로 인해 널리 사용되며, 다양한 설정 옵션을 통해 개발자에게 유연성을 제공합니다.예를 들어, 아래와 같이 Gson을 사용하면 간단하게 JSON 데이터를 Java 객체로 변환할 수 있습니다.import com.google.gson.Gson;public class Main { public static void main(String[] args) { String json = "{\"name\":\"김철수\",\"age\":30,\"city\":\"서울\"}"; ..

JAVA 2024.11.23

[JAVA] List와 Java 8 이상 기능 통합

Java 8부터 도입된 Lambda 표현식, Stream API, Optional은 List와 같은 컬렉션 데이터를 처리하는 데 강력한 기능을 제공합니다.1. Lambda와 List의 결합Lambda 표현식은 간결한 코드로 리스트의 데이터를 처리하거나 반복 작업을 수행하는 데 유용합니다. forEach(), removeIf()와 같은 메서드와 함께 사용하면 코드의 가독성이 크게 향상됩니다.Lambda를 활용한 List 데이터 출력import java.util.ArrayList;import java.util.List;public class LambdaWithList { public static void main(String[] args) { List cities = new ArrayLis..

JAVA 2024.11.22

[JAVA] List 자주 사용하는 유틸리티 메서드와 트릭

Java에서 리스트(List)를 활용한 프로그래밍은 매우 빈번하며, 효율적으로 데이터를 다루기 위해 유틸리티 메서드와 트릭을 사용하는 것이 중요합니다.1. List 병합과 필터링리스트 데이터를 합치거나 특정 조건에 따라 필터링하는 작업은 데이터 처리에서 매우 자주 사용됩니다. Java Stream API를 활용하면 효율적으로 구현할 수 있습니다.List 병합리스트 병합은 두 개 이상의 리스트를 하나로 합치는 작업입니다. 이 작업은 Stream.concat() 또는 addAll() 메서드를 통해 간단히 구현할 수 있습니다.예제 코드 - 병합import java.util.ArrayList;import java.util.List;public class ListMergeExample { public sta..

JAVA 2024.11.21

[JAVA] List 자주 발생하는 문제와 해결법

Java를 사용하면서 IndexOutOfBoundsException, ConcurrentModificationException, NullPointerException과 같은 예외는 개발자들에게 흔히 발생하는 문제입니다. 이 예외들은 코드의 안정성을 저해하며, 잘못된 사용자 경험을 초래할 수 있습니다.1. IndexOutOfBoundsException 예외 처리IndexOutOfBoundsException은 리스트나 배열의 유효하지 않은 인덱스에 접근하려고 할 때 발생합니다.원인유효 범위를 초과한 인덱스에 접근빈 리스트에서 요소를 삭제하거나 읽으려고 시도반복문에서 잘못된 조건 설정해결 방법데이터 구조의 크기를 확인하고 인덱스 유효성을 검사안전한 조건문을 활용하여 예외를 방지예제 코드import java.u..

JAVA 2024.11.20

[JAVA] List성능 비교와 최적화

Java에서 ArrayList와 LinkedList는 가장 널리 사용되는 리스트 구현체입니다. 하지만 각 리스트의 동작 원리와 성능 특성에 따라 적합한 사용 사례와 선택 기준이 달라집니다.1. ArrayList vs LinkedList 성능 비교ArrayList와 LinkedList의 동작 원리ArrayList는 내부적으로 동적 배열(Dynamic Array)을 사용하며, 인덱스를 기반으로 빠르게 접근이 가능합니다. 하지만 크기를 초과하는 요소를 추가할 때 배열을 재할당해야 하므로 성능 저하가 발생할 수 있습니다.LinkedList는 노드(Node) 간 연결로 구성된 데이터 구조로, 삽입과 삭제가 특정 위치에서 빠르게 이루어집니다. 하지만 인덱스를 기반으로 한 접근 속도가 느립니다.성능 비교: 검색, 삽..

JAVA 2024.11.19

[JAVA] List 활용

1. 중복 제거: Set과 List 조합왜 중복 제거가 필요한가?리스트는 중복 데이터를 허용하기 때문에, 특정 데이터의 유일성을 보장해야 하는 경우 중복 제거가 필수적입니다. Set은 데이터의 중복을 자동으로 제거하는 자료구조로, 이를 활용해 리스트의 중복 데이터를 제거할 수 있습니다.Set과 List를 조합한 중복 제거import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class Main { public static void main(String[] args) { List names = new ArrayList(); names.add("김철수"..

JAVA 2024.11.18

[JAVA] Immutable List (불변 리스트)

Java에서는 데이터를 보호하고 안정성을 높이기 위해 불변 리스트(Immutable List)를 사용할 수 있습니다. 불변 리스트는 읽기 전용 데이터 구조로, 생성된 이후에는 데이터를 변경할 수 없습니다. 여기에서는 불변 리스트의 필요성, Collections.unmodifiableList(), Java 9 이상의 List.of() 활용 방법에 대해 설명하고, 관련 예제를 제공합니다.1. 불변 리스트의 필요성불변 리스트란?불변 리스트는 수정할 수 없는 리스트로, 다음과 같은 특징이 있습니다.요소를 추가, 삭제, 수정할 수 없음스레드 안전성(Thread Safety) 보장데이터 무결성 유지왜 불변 리스트가 필요할까?데이터 보호: 외부에서 리스트를 수정할 수 없으므로 원본 데이터를 안전하게 유지할 수 있습니..

JAVA 2024.11.18
반응형