3 Layer Architecture
- 길고 복잡한 코드를 유지 보수 등의 이유로 깔끔하게 관리하기 위해
Controlller, Servce , Repository로 나눔.
1. Controlller
- 클라이언트의 요청을 받고 서비스에게 로직 처리를 전달함
- 서비스에서 처리 완료된 결과를 클라이언트에게 전달
2. Service
- 사용자의 요구사항을 처리
- DB저장 및 조회가 필요할 경우 Repository에게 요청
3. Repository
- DB 관리
- DB CRUD작업 처리
IoC와 DI
- IoC (제어의 역전)
- DI (의존성 주입)
Bean
- 스프링이 관리하는 객체
Spring IoC container
- Bean을 모아둔 컨테이너
Bean 등록 방법
- @Component를 등록하고자 하는 클래스 위에 설정
- Spring 'Bean' 이름: 클래스의 앞글자만 소문자로 변경
- @RestController, @Service, @Repository에 @Component가 포함되어 있어
controller, service repository에너테이션으로도 대체 가능
Bean 사용법
- @Autowired를 메서드 위에 달아 Bean사용
- 생성자 선언이 1개일 경우 @Autowired생략 가능
'Spring' 카테고리의 다른 글
[TIL] 231116 Spring | 영속성컨텍스트 JPA 트렌젝션 EntityManager (0) | 2023.11.16 |
---|---|
[TIL] 231114 Spring | ORM, JPA, Hibernate, Entity, 영속성 컨텍스트 (0) | 2023.11.14 |
[TIL] 231110 Spring Database연결하기, SQL, JdbcTemplate, JDBC (0) | 2023.11.10 |
[TIL] 231109 Spring 숙련주차 Entity 연관 관계 1:1 1:N N:1 관계 (0) | 2023.11.09 |
[TIL] 231108 Spring 숙련주차 Bean, 인증과 인가, 사용자 관리 (0) | 2023.11.08 |