1. 의존성 주입(Dependency Injection, DI) 패턴: 객체 간의 의존성을 관리하고 객체 생성, 소멸 등을 스프링 컨테이너가 자동으로 처리해줍니다. 스프링 프레임워크에서 제공하는 IoC(Inversion of Control) 기술을 기반으로 구현됩니다.
  2. MVC(Model-View-Controller) 패턴: 웹 애플리케이션 개발에서 가장 많이 사용되는 아키텍처 패턴 중 하나입니다. Spring Boot에서는 Spring MVC를 기반으로 한 MVC 패턴을 사용하여 웹 애플리케이션을 개발할 수 있습니다.
  3. DAO(Data Access Object) 패턴: 데이터베이스와의 연동을 추상화하여 데이터베이스에 대한 CRUD(Create, Read, Update, Delete) 기능을 수행하는 객체를 정의하는 패턴입니다. Spring Boot에서는 Spring Data JPA, MyBatis 등의 ORM(Object-Relational Mapping) 프레임워크를 사용하여 DAO 패턴을 쉽게 구현할 수 있습니다.

dao 패턴의 사용 예시

  1. AOP(Aspect-Oriented Programming) 패턴: 여러 모듈에서 공통으로 사용되는 로직을 분리하여 모듈화하는 패턴입니다. Spring Boot에서는 Spring AOP를 사용하여 AOP 패턴을 쉽게 구현할 수 있습니다.
  2. RESTful API 패턴: Representational State Transfer(REST) 아키텍처를 기반으로 한 API 설계 패턴입니다. Spring Boot에서는 Spring MVC를 사용하여 RESTful API를 구현할 수 있습니다.
  3. 스프링 시큐리티(Spring Security) 패턴: 웹 애플리케이션 보안을 제공하는 패턴입니다. Spring Boot에서는 Spring Security를 사용하여 보안을 쉽게 구현할 수 있습니다.