Skip to content

MVC  #10

@mic050r

Description

@mic050r

1. ModelAttribute & DTO

  • @ModelAttribute : 사용자가 보낸 데이터를 DTO(Data Transfer Object)에 바인딩하는 역할을 한다.
  • DTO : 데이터를 담는 객체로, 사용자의 입력 데이터를 담아서 Controller로 전달한다. 여기서는 write라는 함수가 있고, 이를 통해 콘텐츠 데이터를 받아 처리하는 것?

2. Controller

  • @controller: 클라이언트의 요청을 받아서 처리하는 계층이다. Service 객체를 @Autowired를 통해 주입받고, 비즈니스 로직을 서비스에게 위임한다. 여기서는 write 메소드가 서비스로부터 데이터를 전달받는 과정이 있다.

3. Service

  • Service: 비즈니스 로직을 처리하는 계층이다. 여기서는 DAO를 주입받아(@Autowired) DB 작업을 처리한다.
  • DAO: 데이터베이스와의 통신을 담당하는 계층으로, 데이터베이스 CRUD 작업을 처리한다.

4. DAO 및 Mapper

  • DAO에서는 실제 DB와의 연동을 수행하며, 여기서는 MyBatis 프레임워크를 사용하고 있는 것으로 보인다. Mapper를 통해 SQL 쿼리를 작성하고, 이를 데이터베이스와 매핑하여 작업을 수행한다.

5. Database & Query

  • DAO와 Mapper를 통해 실행된 SQL 쿼리들은 데이터베이스에 반영되며, 여기서 CRUD 작업을 처리한다.

전체적인 흐름:

  1. 클라이언트가 데이터를 전송하면 @ModelAttribute를 통해 데이터를 DTO에 바인딩.
  2. Controller는 이 DTO를 받아서 Service 계층으로 전달.
  3. ServiceDAO를 통해 DB에 CRUD 작업을 수행.
  4. DAOMapper와 연동되어 MyBatisJPA를 통해 SQL 쿼리를 실행하여 DB와 통신.

필기 내용 요약

  • MVC 패턴에서 각 계층(Controller, Service, DAO)의 역할을 설명한 필기.
  • MyBatis를 이용한 DB 연동, CRUD 쿼리 실행, 매퍼의 역할 설명.
  • 데이터 흐름: 사용자 → DTO → Controller → Service → DAO → Mapper → DB.

image

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions