ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSP Servelet 이론(4)
    JSP Servlet 2022. 6. 2. 09:43

    <MVC Pattern>

    - 모델(Model)

      : 데이터, 도구 자료형
      : 어플리케이션의 정보, 데이터
      : 실행에 직접적인 관여 x, 데이터를 담거나, 데이터를 보내거나, 수정, 삭제하는 객체

      : 어플리케이션 로직을 담당하는 부분으로 데이터베이스와의 로직을 담당하는 부분
    - 뷰(View)

      : 입출력
      : 사용자가 보게 될 결과 화면 출력
      : Model 데이터를 기반으로 실제 사용자에게 보여지는 페이지
    - 컨트롤러(Controller)

      : 기능관리, 관제탑
      : 사용자의 입력처리와 흐름 제어 담당
      : 어플리케이션의 행위를 정의, Logic 결과에 따라 적절한 View를 선택하여 응답

      : 사용자의 요청을 받아서 요청에 해당하는 비즈니스 로직을 수행하도록 컨트롤 하고, 작업 결과에 따라 응답을 결정하          는 역할

      : Model과 view 사이의 데이터 전달 역할

    - MVC란?
      : 세 영역으로 구분하고, 영역간 결합도를 최소화
      : 모델 -> 컨트롤러 -> 뷰 -> Client -> 컨트롤러 -> 모델

    - Model1
      : JSP에서 출력과 로직을 전부 컨트롤
      : JSP(Controller + View)
      : View와 Controller가 같은 JSP에서 실행
      : 간단한 웹 애플리케이션 구현에 용이

    - Model2
      : JSP에서는 출력만 처리
      : Servlet(Controller), JSP(View)
      : View와 Controller가 엄격히 구분. View는 어떠한 처리 Logic도 포함 x
      : 중 대형 프로젝트에 적합

    <Maven Project>

    Maven이란?
    - Java용 프로젝트 관리 도구
    - 필요한 라이브러리를 pom.xml에 정의
    - 라이브러리의 동작에 필요한 라이브러리도 자동 다운로드

    new -> others -> maven project -> next -> next -> all catalogs에서 filter에 maven-archetype-webapp 입력, org.apache.maven.archetypes선택 후 next-> 
    group id에 별칭 입력 ex) com.smhrd, artifact id에 프로젝트명 입력 -> finish
    MavenSample에서 우클릭,  build path 의 configure build path 눌러서 libraries로 가기, add library눌러서  server runtime 눌러서 finish처리 하고
     다시 add library 눌러서 web app library finish처리
    이어서 project facets 누르기 -> dynamic web module 버전 4.0으로 수정, java버전도 1.8로 수정

    DynamicWebproject만들기 이름은 mavenproject
    밑에서 네번째 configure의 맨 밑 comvert to maven project 누르기 

    서블릿, 자바 파일은 src/main/java에 넣기
    나머지 위치는 src의 webapp에 넣기

    라이브러리 추가는 pom.xml의 dependencies안에 dependency를 추가하여 만듦

    < MyBatis 프레임워크 >
    - Java코드와 SQL쿼리를 자동으로 연결해주는 프레임워크(mapping기능)
    - SQL쿼리를 XML파일로 분리
    - JDBC코드 간결하게 사용가능

    < MyBatis 프레임워크 사용법 >
    1) 기존 DAO 클래스 방식
    2) Mapper interface방식
    3) Annotation 방식

    < MyBatis 프레임워크 >
    DAO 메서드
    - 연결객체 생성
    - 실행

    config.xml
    동적로딩

    mapper.xml
    SQL문 준비

    *******
    IotMember a = new I("김운비");
    IotMember b = new I("김철민");
     --> 인스턴스가 엄연히 다르다(가지고 있는 주소값이 다르다)

    static(정적인)
    -> 서로 다른 값을 가진 객체여도 똑같은 값을 공유, 무조건 1순위로 메모리에 로딩됨, 별도로 객체를 쓰지 않아도 가져다 쓸 수 있음

    < Lombok 라이브러리 >
    - Getter/Setter/생성자 자동 생성
    - VO 여러 개 생성 시, 효율적인 작업 가능

    * 오류가 떴을 때 오른쪽 마우스에서 maven -> update project를 누르고 상단의 project에서 clean 누르기

    *새로운 요청이 있으면 해당하는 controller(servlet)를 만들고 db연동은 dao패키지에서 하며 sql문 작성은 mapper에서 해줌. 그리고 뷰에 해당하는 jsp를 만들어줌
    jsp로 갈때는 forward이고 다른 controller로 갈때는 sendredirect임

    *실행은 controller에서.

     

    < MVC 기본 동작 흐름 >

     

    EL(출력식)

    ${ 식 }

        ↑ -- 1. var(변수)

               2. 속성이름(*****)

               3. 연산자

     

    'JSP Servlet' 카테고리의 다른 글

    Eclipse MAVEN Setting  (0) 2022.07.12
    Eclipse Tomcat9 Setting  (0) 2022.07.12
    JSP Servlet 이론(3)  (0) 2022.05.24
    JSP 실습(2)  (0) 2022.05.02
    JSP 실습(1)  (0) 2022.05.02

    댓글

Designed by Tistory.