코북
Keep going
코북
전체 방문자
오늘
어제
  • 분류 전체보기 (114)
    • Computer Science (20)
      • 인터넷 (10)
      • 운영체제 및 일반지식 (4)
      • 공통 요구사항 (4)
      • WAS (2)
    • DataBase (18)
    • JavaScript (22)
    • Spring (15)
    • Java (4)
    • ASP.NET (5)
    • C# (6)
    • 알고리즘 (8)
    • HTML5 + CSS (5)
    • Git & GitHub (5)
    • Machine Learning (5)
    • 좋은 글 공유 (1)

최근 글

최근 댓글

티스토리

hELLO · Designed By 정상우.
코북

Keep going

[Spring] 스프링 왜 사용할까?
Spring

[Spring] 스프링 왜 사용할까?

2021. 8. 31. 09:22

 

 

스프링 수업 내용 필기입니다

 

▶ 스프링 프레임워크?
프레임워크는 하나의 방법론이다
우리나라 전자정부 표준프레임워크가 스프링 기반으로 되어있다
표준프레임워크 포털에서 관리
이클립스에 여러가지 모듈을 탑재

 

▷ JDBC = Java + SQL
1. 섞어서 사용하기 때문에 유지보수가 어려움
2. 모든 코드를 짜야하기 때문에 개발속도가 느려 생산성이 떨어짐

--> JDBC를 대신 MyBatis 프레임워크를 사용한다

▷ MyBatis (DB 프레임워크)
Java와 SQL을 분리해서 코딩
Java와 SQL을 연결하는 행위를 Mapping이라함
분리된 것을 Mapping해서 사용


▷ web = servlet(Controller) + jsp(View), class(Model, DAO, DTO)
스프링에서는 servlet 사용 X, jsp 사용 X, Model만 사용한다
--> 스프링 프레임워크의 다른 기술들로 대체

 

▶ 스프링은 MVC를 기본으로 한다
프레임워크는 하나의 방법론이다
눈에 보이지 않음 -> 코딩을 직접 해봐야 알 수 있다

▶ Spring 폴더의 S와 M의 의미
S -> Spring
M -> Maven, Spring 프레임워크의 관리도구 툴
프로젝트를 빌드하고 라이브러리(API)를 관리해주는 도구

▶ 3 Tier Architecture
▷ Presentation Layer (Web Layer)
Client --요청(handle)--> Server
1. FrontController ( servlet : Controller ) 시키는 얘 -> 스프링은 만들지 않고 알아서 제공, DispatcherServlet
2. HandlerMapping -> F.C. 와 POJO를 연결, handle을 전해줌 -> 스프링에서 제공
3. POJO**( Plain Old Java Object ) ( java : Controller ) F.C.가 할일을 대신해주는 얘, 실제 일하는 얘

POJO가 결과값을 F.C. 에게 리턴해준다

하지만, 논리적인 경로를 보내줬기 때문에 F.C.는 해석할 수 없다

--> F.C.는 View Resolver에게 값을 보내 논리적인 경로를 물리적인 경로로 다시 받는다 

4. ViewResolver -> POJO가 리턴한 논리적 경로를 물리적 경로로 바꿔 F.C.에게 보내준다-> 스프링에서 제공

-->> 나머지가 다 만들어져있기 때문에 스프링은 POJO부터 만들면 된다, 생산성 up

F.C.는 ViewResolver에게 받은 값으로 View(jsp)로 간다.

View(jsp)는 F.C.가 요청한 값을 보내준다. 

F.C.는 받은 값을 Client에게 보내준다.


▷ Business Layer(Service Layer)
Presentation Layer와 Persistence Layer를 연결해준다
로직을 처리하는 역할

▷ Persistence Layer 
Model(Repository)

 

▶ JSP는 webapp/WEB-INF/views 에다가 만든다
왜 webapp이 아닌 views에 만드는가?
Client가 F.C. 없이 바로 View에 요청하지 못하게 하기 위해서! 
Client는 서버에 요청할 때 무조건 F.C.를 거쳐야한다.

F.C.없이 실행할 경우 주소 = http://localhost:8081/web/WEB-INF/views/boardList.jsp
WEB-INF 는 톰캣의 보안 디렉토리 -> 브라우저에 WEB-INF가 노출되면 안된다
--> JSP는 URL상에 노출되지 않는다
Client가 http://localhost:8081/web/boardList.do 로 요청하면 그때 서버에서 처리해서 보여주는 것

forwarding, con view 사이에서 일어남

'Spring' 카테고리의 다른 글

[Spring] Spring에서 html 열기  (0) 2021.10.13
[Spring] 코딩 시작 전 환경설정  (0) 2021.09.05
[Spring] 스프링 수업 기록  (0) 2021.09.05
[Spring] 도서 목록 조회 리스트 만들기  (0) 2021.09.04
[Spring] 스프링은 뭘까?  (0) 2021.08.18
    'Spring' 카테고리의 다른 글
    • [Spring] 코딩 시작 전 환경설정
    • [Spring] 스프링 수업 기록
    • [Spring] 도서 목록 조회 리스트 만들기
    • [Spring] 스프링은 뭘까?
    코북
    코북

    티스토리툴바