[Java] Enum 타입
📌 들어가며 상태 코드나 분류처럼 정해진 값의 집합을 다룰 때, 예전에는 final 상수를 나열해서 썼다. 하지만 여러 클래스에서 쓰기 번거롭고, 관련된 값들을 한데 묶어 관리하기 어려웠다. 이 문제를 해결하는 것이 Enum이다. Enum이란? “Enumeration(열거)”의 약자. 로직보다는 데이터를 열거한 요소들의 집합이다. 자바에서 상...
📌 들어가며 상태 코드나 분류처럼 정해진 값의 집합을 다룰 때, 예전에는 final 상수를 나열해서 썼다. 하지만 여러 클래스에서 쓰기 번거롭고, 관련된 값들을 한데 묶어 관리하기 어려웠다. 이 문제를 해결하는 것이 Enum이다. Enum이란? “Enumeration(열거)”의 약자. 로직보다는 데이터를 열거한 요소들의 집합이다. 자바에서 상...
📌 들어가며 이번 글에서는 네이버 Clova Face Recognition API로 얼굴 인식 프로그램을 만든다. 사진 속 얼굴을 감지해 성별·나이·감정을 표시하고, 나아가 유명인 닮은꼴까지 찾아본다. 준비물 — 네이버 Developers에서 애플리케이션 등록 후 발급받은 Client ID/Secret, 그리고 matplotlib·reques...
📌 들어가며 이번 글에서는 운영체제의 핵심 개념인 프로세스와 스레드를 정리한다. 프로그램과 프로세스의 차이, 프로세스 상태와 PCB·문맥 교환, fork/exec, 그리고 스레드와 멀티스레드 모델까지 다룬다. 프로그램 vs 프로세스 — 프로그램은 저장장치에 정적으로 저장된 파일이고, 프로세스는 그 프로그램이 실행을 위해 메모리에 올라온 상태다...
📌 들어가며 이번 글에서는 파이썬으로 가상화폐 거래소(빗썸) 정보를 조회한다. Qt Designer로 만든 GUI에 현재가를 표시하고, QTimer로 실시간 갱신하며, 이동평균선으로 상승장/하락장을 판별하는 것까지 만들어본다. 사용 도구 — pybithumb(빗썸 API), PyQt5(GUI), Qt Designer(.ui 파일). 설치는 p...
📌 들어가며 이번 글에서는 Spring Data JPA의 쿼리 메소드를 정리한다. 쿼리 메소드란? 레포지토리 메소드의 이름을 정해진 형식으로 짓기만 하면 그 기능을 하는 것. 순수 JPA와 비교하면 그 편리함이 극명하다. 1. 순수 JPA — 직접 쿼리 작성 public List<Member> findByUsernameAn...
📌 들어가며 이번 글에서는 네임드 쿼리(Named Query)를 순수 JPA와 Spring Data JPA에서 각각 사용하는 법을 비교한다. 네임드 쿼리란? 엔티티에 쿼리문을 이름과 함께 미리 저장해두고, 레포지토리에서 그 이름으로 바로 꺼내 쓰는 기능. 1. 엔티티에 쿼리 등록 (@NamedQuery) @NamedQuery( ...
📌 들어가며 이번 글에서는 @Query로 특정 값(단일 필드)과 DTO를 조회하는 방법을 정리한다. 엔티티 전체가 아니라 필요한 데이터만 뽑아올 때 유용하다. 1. 값 가져오기 (단일 필드) 엔티티가 아니라 특정 컬럼 값만 List로 조회한다. @Query("select m.username from Member m") List<Stri...
📌 들어가며 이번 글에서는 임베디드 타입을 복합키(@EmbeddedId) 용도로 활용하는 방법을 정리한다. 임베디드 타입: 새로운 값 타입을 직접 정의해 사용하는 것. int, String처럼 값 타입이라는 점이 핵심이다. 1. 복합키를 임베디드로 묶기 여러 필드가 함께 기본키(복합키)를 이룰 때, 이 필드들을 하나의 객체로 묶어 @...
📌 들어가며 이번 글에서는 순수 JPA와 Spring Data JPA의 Repository 코드 차이를 비교한다. Spring Data JPA가 얼마나 많은 코드를 줄여주는지 확인해보자. 1. 순수 JPA — 직접 구현 기존 JPA는 @Repository와 EntityManager로 CRUD를 일일이 구현한다. @Repository publ...
📌 들어가며 이번 글에서는 클래스에 이어 생성자·상속·클래스 변수, 자바의 import 같은 모듈, 그리고 예외 처리를 다룬다. 객체와 인스턴스: a = Cookies()에서 a는 객체이자 Cookies의 인스턴스다. “a는 인스턴스다”보다 “a는 Cookies의 인스턴스다”가 더 정확한 표현 — 어떤 클래스로 만든 객체인지 관계를 드러내기 ...