5/27 MVC 패턴

박세현·2024년 5월 27일
0

3차 프로젝트

목록 보기
7/14
post-thumbnail

1. main 메서드 실행 클래스 설정 - build.gradle




2. 의존성 추가 - build.gradle

lombok
odjbc11
orai18n
mybatis
slf4j-api
logback-classic




3. MVC 모델 - 역할 분담

  • M(Model) : 비지니스 로직 구현

    • Service : 기능 / 회원가입 기능 -> JoinService
      - DTO(Data Transfer Object) : 데이터 전달 목적의 객체
      - Validator : 데이터 검증
      - DAO(Data Access Object) : 데이터 접근 객체(DB 처리...)
      - VO(Value Object)

  • V(View) : 처리 결과 데이터를 가지고 보이는 부분

  • C(Controller) : 요청(사용자) - 요청 처리를 위한 모델, 뷰를 연결 - 응답 (뷰)



  • DDD(Domain Driven Design) : 도메인 주도 설계

  • Domain : 전문가 영역

    • 게시판 도메인, 주문 도메인, 상품 도메인, 회원 도메인 ...
  • 표현 계층 : View

  • 도메인 계층

  • 인프라 계층 : 공통 인프라(DB ...)

  • MSA(Micro Service Archi...)




4. Controller 설계

1) 메뉴 라우팅



2) 컨트롤러

-> 템플릿 메서드 패턴
run()
공통 (common())
메뉴 항목 (show())
입력 (prompt())



3) 뷰(View) : template

  • Template 인터페이스
  • Templates 클래스

file.encoding 환경변수 UTF-8

-D변수명=값

윈도우즈 인코딩 window949, CPC949, EUC-KR -> 한글을 2바이트로 표현 유니코드
UTF-8 : 한글 1자를 3바이트로 표현하는 유니코드

java -jar -Dfile.encoding=UTF-8 파일명.jar

String System.getEnv("환경변수명");

gradle build




5. Model 설계

기능 - Service

  • DTO, DAO, Validator ... 다른 객체의 협력을 통해서 하나의 기능을 완성
  • 회원이 입력한 데이터가 매개변수 -> 처리

회원 기능
: 회원가입 -> 데이터베이스 접근
: 로그인 -> 데이터베이스 접근

profile
귤귤

0개의 댓글

관련 채용 정보