본문 바로가기

IT개발/Spring Boot315

[Spring Boot3] Logger & SLF4J 구현체 로그 애플리케이션의 흐름을 모니터링하고 오류를 찾는데 도움을 주는 애플리케이션 실행과 관련한 기록. "spring-boot-starter 패키지"에는 "로그백" 패키지가 포함되어 있습니다.로그백은 "SLF4J"를 기본 인터페이스로 사용합니다.애플리케이션에서 로그를 처리할 때에는 "loggerFactory"로부터 "Logger"을 취득한 후(getLooger()), 취득한 Logger를 사용하여 로그를 처리합니다.import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class Hello { private static final Logger logger = LoggerFactory.getLogger(Hello.class); public s.. 2025. 4. 20.
[Spring Boot3]Spring Data JPA가 CRUD를 자동 처리하는 방법 최종 정리 (한 줄 요약!) 1. CrudRepository 제너릭 인터페이스 제공 2. UserRepository extends CrudRepository 형태로 실 매개 타입 전달 3. Spring이 UserRepository의 구현체를 자동 생성 4. 개발자는 UserRepository를 상속받은 인터페이스만 정의하면 CRUD 기능 사용 가능 5. Spring Data JPA가 인터페이스를 기반으로 자동으로 CRUD 쿼리를 실행결론: "인터페이스만 만들면 Spring이 알아서 CRUD를 다 해준다" Spring Data JPA의 CRUD 자동 처리 과정[CrudRepository 제너릭 인터페이스]Spring Data JPA는 CrudRepository라는 제너릭 인터페이스를 제공함.여기서 T는 엔.. 2025. 4. 14.
[Spring Boot3]JPA의 기본 어노테이션 @EntityJPA 엔티티 클래스 선언@Table테이블 이름 및 제약 조건 설정@Id기본 키(PK) 지정@GeneratedValuePK 자동 생성 전략 설정@Column컬럼 속성 설정@EnumeratedEnum 타입 매핑@Temporal날짜/시간 타입 매핑@Lob대용량 데이터 저장 (CLOB/BLOB)@Transient영속성 제외 (DB 저장 X)1. @Entity - 엔티티 클래스 선언개념DB 테이블과 매핑되는 클래스를 나타냄JPA에서 관리하는 영속성(Persistence) 객체로 인식사용법 import jakarta.persistence.*;@Entity //JPA 엔티티 선언@Table(name = "users") //테이블명 지정 (생략 가능)public class User { @Id .. 2025. 4. 6.
[Spring Boot3] 의존성 주입(Dependency Injection) 이해하기(이걸로 끝) 의존성 주입은 다른 객체에 의존하는 객체를 만들 수 있는 소프트웨어 개발 기법.(클래스 간에 "상호작용"을 하면서 동시에 독립적으로 유지) 의존성 주입에는 3가지 클래스 유형(Service, Injector, Client)Public class Car { private Owner owner; public Car() { owner = new Owner(); }}위에 예시를 보면 클라이언트 객체가 서비스 객체를 직접 생성하므로 의존성 주입은 없음.public class Car { private Owner owner; public Car(Owner owner){ this.owner = owner; } } 위에 예시를 보면 .. 2025. 3. 20.