ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Spring (1) - 기존 servlet-jsp와 차이점
    Web/Spring 2023. 6. 28. 14:43

     

    - Spring MVC만들기

     

    > sts3을 통해서 Spring MVC Project를 만들었다.

    > Spring은 maven(프로젝트 관리도구)으로 툴로 생성-빌드-배포 된다. (디렉토리 구조도 maven이 만들어준다)

    > 프로젝트 생성시 패키지명의 끝이 context path로 등록된다.

       ex com.mycompas.myapp -> /myapp

    > 스프링 mvc프로젝트를 만들면, 기본적인 mvc구조가 미리 갖춰져있다.

    > 기존 servlet-Jsp와 크게 3가지 차이점이 있다.pojo,라이브러리관리,DB관리 등의 변동이다.

     

     Spring과 servlet-jsp MVC와 차이점

     

    1 @HandlerMapping (pojo의 변동)

    - 기존에 요청 당 존재했던 pojo가 스프링에서는 1개의 pojo에 여러 메서드들이 요청을 처리하면서, pojo의 갯수를 줄일 수 있게 되었다.

    - 따라서 기존의 class별 맵핑이 Spring에서는 메소드 별 맵핑으로 바꿔야한다.

     

    - memberController를 만들고 그아래에 pojo에 requestHandler를 옮겨보았다.

      > 함수명이 겹치는 문제가 발생 -> 기능에 따라 메서드 구분할 것임으로 pojo가 Controller를 구현할 필요 없음

    - 위와 같이 기능별로 함수명을 구분해서 사용할 것이다.

      > 기존의 핸들러 맵핑은 필요가 없다.

      > 스프링에서 지원하는 @RequestMapping()을 이용해서 메서드별 요청처리를 맵핑할 수 있다. 

     

    - 이제 프론트 컨트롤러는 pojo와만 연결된다. 

      > 기존의 viewResolver와 handlerMapping 클래스가 필요없다.

     

    정리하자면, 

       * 기존에는 요청에 따라 pojo의 갯수가 너무 많이 늘어나서 관리가 힘들었다. (서블릿 늘어나듯이)

       *프론트 컨트롤러와 1개의 pojo를 연결하고, pojo안에 메서드가 요청을 처리하도록 바뀌었다.

       * 따라서 pojo는 Controller를 구현할 필요가 없으며, 기존의 handlermapping클래스와 viewresolver는 필요없다.

       * 대신에 spring에서 제공하는 viewresolver와 @RequestMapping을 통해 메서드별로 요청을 처리할 수있게 되었다. 

     

     -memberController만들고, model이랑 mybatis 패키지, 뷰등 가져옴 

    public class MemberController {
    	
    	@RequestMapping("/memberList.do")
    	public String memberList() {
    		
    		
    		
    		return "memberList";
    	}
    	
    	@RequestMapping("/memberInsert.do")
    	public String memberInsert() {
    		
    		
    		
    		return "redirect:/memberList.do";
    	}
    	
    	@RequestMapping("/memberRegister.do")
    	public String memberRegister() {
    		
    		
    		
    		return "memberRegister";
    	}
    }

    pojo에 메서드들을 다음과 같이 요청에 엮어두었다.

     

     

    2 maven

     

    - 스프링은 maven에 의해 생성-빌드-배포된다.

    - maven에서 가장 중요한 것은 pom.xml파일이다.(Project object model)

    - pom.xml파일은 라이브러리 (API)를 관리한다.

     

    > 메이븐으로 JDK 버전바꾸기 

    - 스프링관련 api들 기본저장소는 maven/repository이다.

    - pom파일을 통해 다운 받을 수 있다.

    - 기존에 jar파일을 직접 다운 받아서 lib폴더에 집어 넣었던 것 보다 훨씬 쉽게 라이브러리 관리가 가능해짐 

    > api추가하기 

    <dependencies> --> 추가  <dependency> </dependency> <--  </dependencies>

    <dependency>
    			<groupId>javax.servlet.jsp</groupId>
    			<artifactId>jsp-api</artifactId>
    			<version>2.1</version>
    			<scope>provided</scope>
    		</dependency>

    - mavnrepository 사이트에 저장소를 통해서 다운받아짐

    - 필요한 라이브러리를 다운받을 수 있는 dependency를 pom파일에 위와 같이 추가하면 다운받아진다.

     

     

    'Web > Spring' 카테고리의 다른 글

    Spring MVC01 - 스프링 동작 절차  (0) 2023.06.28
    Spring MVC01 - DB연결하기  (0) 2023.06.28
    스프링 - 간단 용어들 정리  (0) 2023.03.05
    스프링 MVC -간단한 코드로 보는 원리  (0) 2023.03.04
    스프링MVC -관심사의 분리  (0) 2023.03.04
Designed by Tistory.