열심히 끝까지

디바이스 융합 자바(Java) - Spring 관련 암기할 내용 정리 본문

디바이스 융합 자바(Java)기반 풀스택 개발자 양성과정(수업내용)

디바이스 융합 자바(Java) - Spring 관련 암기할 내용 정리

노유림 2022. 9. 20. 18:01

암기)

.xml -> 이 설정파일을 읽는 컨테이너가 존재한다.
컨테이너가 등장하려면? 설정파일(.xml)이 필요하다.

-----------------------------------------

컨테이너란?
 new 해주는 존재
 서블릿을 new해주면 서블릿 컨테이너 [web.xml]
 JAVA 클래스(POJO)를 new해주면 스프링 컨테이너 [appliationContext.xml,DS-servlet.xml]

--------------------------------------------

서블릿이란?
 특정 조건들이 첨가된 JAVA 클래스
 확장된 기능을 가지는 특이한 형태의 JAVA 클래스
 "웹 개발"할때 사용됨
 서블릿으로 웹 화면을 구현하는 행위 어렵죠? JAVA언어 안에 HTML언어를 넣어야하니까...
   out.println("<h2>안녕하세요</h2>");
 귀찮고 어려우니까, JSP(HTML 안에서 JAVA 사용)가 등장한것이다.
   <% for(int i=0;i<3;i++){ %>
      <h2>안녕</h2>
   <% } %>

이많은 클래스에서 서블릿 파일은 단한개. FrontController 역할을 하는 애만 유일하게 서블릿 파일입니다.
extends HttpServlet << 상속받으면 그게 서블릿입니다.
지금은 DispatcherServlet 입니다.
   사용자한테 요청을 받는 부분이 맞습니다.

------------------------------------------------------

서블릿 vs 필터 vs 리스너

서블릿이 기본입니다.
서블릿을 상속받아서 만들어진것들이 필터,리스너입니다.

필터는
   [사용자의 요청]정보를 탈취해서
   특정기능을 수행하고(ex. 인코딩)
   다시 원래의 요청을 수행하게 합니다.

리스너는
   웹에서 발생하는 [특정 이벤트]를 감지(모니터링)합니다.
   등록해둔(연결해둔,설정해둔) 이벤트가 감지되면 리스너가 동작합니다.
   주로, "톰캣이 실행될때" --->> "웹 크롤링해." 이런식으로 실습했습니다.

 

1. 포워드 vs 리다이렉트
-> 이제 잘 이해하셨다면,
[데이터 여부]를 넘어서
새 요청인지(새로운 로직인지) 등등을 더 고려해서 결정해도 좋겠습니다.
+) 추후에 데이터 보낼수도있고.... 암튼 여러가지 상황 고려해보기

2. request,session,application SCOPE는 "JSP"에서 이야기하던 내용입니다.
따라서 위의 스코프를 이용하면 온전한 POJO는 아닙니다.
mav등을 이용함으로써 보다 가벼운 자바객체를 이용하게 되는것입니다
request,response 등을 사용했다고 해서 "틀린것"은 아닙니다. 돌아가요
근데 무겁겠죠? 뭐 이런저런 사항들을 고려해서 코드를 작성해보시면 좋겠습니다.

3. 데이터 존재여부
-> 이건 저한테 확인하는것보다
"로그" 남기시면서 직접이해해보는것이 좋겠습니다.
사유) 말해도 로그찍고 보는것보다 늦게 이해됨
로그 다 찍어봐도 모르겠으면 로그랑 같이 질문해주세요 그럼 설명도와드리겠습니당