본문 바로가기
728x90
반응형

스프링5

[Spring Boot] @Bean, @Configuration, @Component 위 3가지는 Spring Bean을 등록할때 사용하는 어노테이션이다. 각 차이점을 정확히 알고자 정리한다. 우선 Spring Bean은 무엇일까? Spring Bean이란?? Spring IoC (Inversion of Control) 컨테이너에 의해 관리되는 객체를 의미합니다. Spring 애플리케이션의 구성 요소들로서, 애플리케이션의 주요 기능들을 담당하는 객체들이 빈(Bean)으로 등록된다. 이러한 빈들은 Spring 컨테이너가 생성하고, 그 생명 주기를 관리하며, 애플리케이션이 실행될 때 자동으로 주입된다. 덕분에 우리가 귀찮게 의존성과 생성자를 관리할 필요가 없다. Spring Bean의 주요 특징관리되는 객체: Spring Bean은 Spring IoC 컨테이너가 관리. 즉, 개발자가 직접 인.. 2024. 8. 30.
[Spring Boot] JPA @Id 전략 항상 JPA로 엔티티를 만들때 id 값에다 붙이는 어노테이션. 전략이 여러 개 존재하여 같아 정리하고자 한다. @Id 애너테이션@Id 애너테이션은 JPA에서 엔티티의 기본 키를 정의할 때 사용됩니다. 엔티티 클래스 내에서 하나의 필드 또는 메소드에 @Id를 붙여 해당 필드가 데이터베이스에서 해당 엔티티를 고유하게 식별할 수 있는 기본 키임을 나타냅니다. @Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id; 이렇게 어노테이션을 사용하고@GeneratedValue에게 4가지 전략이 존재하는데 첫번째로1. GenerationType.AUTO설명: 기본 키 생성을 JPA 구현체에 위임합니다. 각 데이터베이스 벤더에 맞게 적절한 전략이 자동.. 2024. 8. 15.
[Spring Boot] 디렉터리 패키지 구조 - 도메인형, 계층형 프로젝트를 처음 생성하고 패키지 구조를 설계할때 고민이 될 경우가 있을 것이다. 난 처음에 무작정 도메인형으로 설계했었는데 계층형과 차이를 이해하고 그에 맞춰서 선택해보자. 도메인형 패키지 구조 (Domain-Driven Package Structure)설명: 도메인형 패키지 구조는 애플리케이션의 도메인(비즈니스 로직)에 기반하여 패키지를 구성하는 방법입니다. 이 접근 방식은 도메인별로 관련된 클래스와 컴포넌트를 함께 묶어, 도메인에 관련된 모든 것을 동일한 패키지에 배치합니다. 특징:도메인 중심: 애플리케이션의 도메인 또는 비즈니스 문제를 중심으로 패키지를 구분합니다.비즈니스 로직 중심: 도메인별로 관련된 엔티티, 서비스, 리포지토리 등을 함께 묶어 관리합니다.유지보수성: 도메인별로 패키지가 구성되어 .. 2024. 8. 11.
[Spring Boot] IoC, DI, AOP 정리 스프링 공부를 시작하면 가장 처음 접하는 3가지 주제이다. 확실하게 정리하고자 한다. IoC (Inversion of Control, 제어의 역전)설명: IoC는 애플리케이션의 제어 흐름을 프레임워크나 컨테이너가 담당하도록 하는 프로그래밍 원칙입니다. 일반적으로 객체의 생성, 초기화, 라이프사이클 관리 등의 제어권을 개발자가 아닌 Spring과 같은 프레임워크에 위임합니다. 이로 인해 객체 간의 결합도가 낮아지고, 유연하고 테스트하기 쉬운 구조를 가지게 됩니다.처음에 말을 이해하기가 쉽지 않았는데 간단하게 말하면pubic class Family{ son = new Son();} 가족이 되려면 간단하게 아들을 새로 낳아야 되는데 낳는 과정, 관리하기 힘들기에 pubic class Family{ privat.. 2024. 8. 11.
728x90
반응형