1. Querydsl이란?Querydsl은 Java 애플리케이션에서 타입 안전한 쿼리를 작성할 수 있도록 도와주는 라이브러리로, 기본적으로 Q 클래스를 통해 엔티티 클래스의 속성에 접근하여 동적 쿼리를 생성한다. Q 클래스는 컴파일 타임에 타입 안전성을 제공하며, 이를 통해 쿼리 빌더(JPAQuery, SQLQuery 등)를 사용해 조건에 맞는 쿼리를 동적으로 구성할 수 있다. 쿼리 실행 시, 데이터베이스에 맞게 변환된 쿼리가 실행되며, 결과는 fetch(), fetchOne(), fetchCount() 등의 메서드를 통해 반환된다. 이 방식은 SQL 문자열을 직접 작성하는 대신 Java 코드로 쿼리를 작성함으로써 가독성을 높이고 오류를 줄이며, 동적 쿼리 생성을 통해 복잡한 조건을 효율적으로 처리할 수..
분류 전체보기
ResponseEntitySpring Framework에서 HTTP 응답을 제어할 수 있는 클래스이다. 주로 Web Apllication에서 RESTful API를 구현할 때 사용되며, 본문(body), 상태 코드(status code), 헤더(headers) 등을 설정하는데 사용한다. 주요 특징Body : 응답의 본문을 설정한다. JSON, 문자열, 객체 등을 반환할 수 있다.Status Code : HTTP 상태 코드를 설정할 수 있다. 200 OK, 404 Not found, 201 Created 등이 있다.Headers : HTTP 응답 헤더를 설정할 수 있다. Content-Type, Authroization 등의 헤더를 추가할 수 있다. 기본 사용법@GetMapping("/message")pu..
MongoDB란?MongoDB는 NoSQL 데이터베이스 중 하나로, 데이터가 JSON 형태의 문서(Document)로 저장되는 문서 지향(Document-Oriented) 데이터베이스이다. NoSQL 데이터베이스란?NoSQL은 "Not Only SQL"의 약자로, 관계형 데이터베이스와 달리 고정된 스키마를 요구하지 않는 데이터베이스 기술을 말한다.스키마리스(Schema-less) : 데이터 구조를 사전에 정의하지 않아도 된다.유연성(Flexibility) : 데이터 모델링이 자유롭고, 다양한 형태의 데이터를 저장할 수 있다.확장성(Scalability) : 수평적 확장이 용이하며, 대규모 데이터 처리에 적합하다.빠른 성능(High Performance) : 특정 사용 사례에 맞게 최적화되어 읽기/쓰기 속..
자바에서 여러가지 일을 동시에 처리하기 위해 사용되는 것이 스레드(Thread)이다. 먼저 프로세스와 스레드를 알아보자 프로세스프로세스(Process)는 일반적으로 cpu에 의해 실행중인 프로그램을 말하고, 자신만의 메모리 공간을 포함한 독립적 실행 환경을 가지고 있다. 우리가 사용하는 프로그램의 일부는 여러 프로세스간 상호작용을 하는 것일수 있다.자바JVM(Java Virtual Machine)은 주로 하나의 프로세스로 실행되며, 동시에 여러 작업을 수행하기 위해 멀티 스레드를 지원하고 있다.스레드스레드(Thread)는 프로세스안에서 실행하는 작은 단위를 말하며 JVM에 의해 관리된다. 프로세스는 적어도 한 개 이상의 스레드가 있으며, Main 스레드 하나 시작하여 스레드를 추가 생성하게 되면 멀티스레..