개발자 끄적끄적

Spring 설치 본문

Spring

Spring 설치

햏치 2023. 3. 4. 01:01

<스프링(Spring)>

- 경량화된 프레임워크(javaEE)
- 스프링의 3대 요소
  - DI(Dependency Injection) : 의존성 주입
    - 다른 프레임워크와 차별화되어 제공하는 의존관계 주입기능으로,
      객체를 직접 생성하는게 아니라 외부에서 생성한 후 
      주입시켜주는 방식이다
    - 모듈 간의 결합도가 낮아지고 유연성이 높아진다

  - AOP(Aspect Oriented Programming) : 관점지향 프로그래밍
    - 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 
      나누어서 보고 그 관점을 기준으로 각각 모듈화
*모듈화 : 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것

  - MVC(Model, View, Controller의 분리)
    - Spring에서 제공하는 웹 모듈로 Model, View, Controller 세가지의 
      구성요소를 사용해 사용자의 다양한 HTTP Request을 처리하고
      단순한 텍스트 형식의 응답부터 REST 형식의 응답은 물론,
      View를 표시하는 html을 return 하는 응답까지 다양한 응답을 
      할 수 있도록하는 프레임
*의존성 : 외부환경(즉, 데이터가 발생되는 상황)이 바뀌었을 때
 



- 스프링 플러그인 설치
- Spring boot 유형의 프로젝트 생성 
- 라이브러리 추가
  - jstl, tomcat-embed-jasper



resources.static 안에 js, css가 들어가야하고
webapp/WEB-INF/view안에는 jsp가 들어가야한다



<스프링 플러그인 설치>
1. 프로젝트 우클릭>Close Project

2. Help>Eclipse Marketplace>검색창 'spring'>Spring 4.~>intall

3. restart(재부팅)

4. pom.xml안에 라이브러리(jstl, tomcat) 복사하기





<Gradle>
- 라이브러리를 자동적으로 관리

<Maven>
- 라이브러리를 수동으로 관리

<WEB-INF>
- 시스템 내부에서는 접근할 수 있지만 외부에서는 접근할 수 없다
- 보안상 외부에서 접근 불가





<application.properties가 안나올 때(오류)>
Help>Install New Software>Work with:>Spring Tool Suit 4 - http~
>Select All>설치





<Spring MVC의 구조>
- Spring MVC : 웹 어플리케이션을 유연하고 확장 가능하게 만들어 준다

1. DispatcherServlet(Front Controller) : 제일 앞 단에서 HTTP Request를 처리하는 Controller 
- HTTP Request가 왔을 때 DispatcherServlet인 Servlet이 HTTP Request를
  처리할 Controller를 지정한다
 
2. Handler(Controller) : HTTP Request를 처리해 Model을 만들고 View를 지정
- DispatcherServlet에 의해 배정된 Controller는 HTTP Request를 처리하고, 
  HTTP Request의 메시지를 처리해 필요한 데이터를 뽑아 Model에 저장한다
- HTTP Request에 따라서 HTTP가 보여줄 View Name을 지정
- View에 Model의 데이터를 세팅하지는 않는다


3. ModelAndView : Controller에 의해 반환된 Model과 View가 Wrapping된 객체
- Model : Map<String, Value> 형태의 데이터 저장소
- Model은 Map 자료 구조로, HTTP Request 속의 데이터를 파싱해
  Key-Value 쌍으로 만들어 저장한다
  이 Model은 이후에 View를 그리기 위해 사용된다
- Model(=Data) And View(=웹페이지)

4. ViewResolver : ModelAndView를 처리하여 View를 그리기
- Model에 저장된 데이터를 사용해 View를 그려준다
- View는 사용자에게 보여줄 완성된 View이며, 여기서 그려지는 
  View는 그대로 유저에게 반환된다
- 우리가 특정한 URI로 들어갔을 떄 우리에게 보여지는 View가 이곳에서
  만들어지는 View이다

'Spring' 카테고리의 다른 글

Annotation 용어 정리  (0) 2023.03.06
AOP 작업  (0) 2023.03.04
Spring 기본개념  (0) 2023.03.04