[2023.12.05] 개발자 교육 52일 차 : 강의-서블릿&JSP 실습 [구디 아카데미]

DaramGee·2023년 12월 5일
1

복습

[[유효범위]]

  • pageContext - 현재 페이지에서만 사용이 가능하다
    : EL사용을 위해서만 사용될 뿐 사용되지 않는다. :주소창이 바뀐다

  • ==request== - 요청이 유지되는 동안에...
    : 요청할 때 마다 생기고 서로 독립적이다. - 세션보다는 제한적, 요청마다 1개씩 갖는다
    : forward시에 사용이 가능함 - 주소창이 안바뀌는데 페이지는 바뀐다???

  • ==session== - 사용자마다 1개씩 생기는 개별저장소임 - 사용자 만명이면 만개가 생긴다???
    :그래서 서버 부담이 대단히 높다. 사용하기는 젤 편하다
    :로그인하면 생겼다가 로그아웃하면 사라진다.
    :메모리 부담이 젤 높다
    :잠깐 저장했다가 지우는 방법도 가능은 하다
    :주소창이 바뀌어서 기존에 요청이 끊어져도 유지된다 - 시간

  • application - 공통저장소이다. - 이부분이 세션과 다르다
    context마다 1개라서 어디서나 접근이 가능함
    모든 클라이언트가 공유가능함 - 하나다
    :Web Application의 시작부터 종료까지 계속 유지된다. - 독이다

강의 내용

  • get / post 방식

  • get/post 방식 설명

    • 서블릿의 response는 JSON 형식으로 포맷을 이야기한다.
    • 왜?? 결국 리액트, UI 솔루션, 라이브러리에 비벼져야 하기 때문에!!
    • 어디서 활용지나? (==javascript==-전송-(get,post)-fetch&ajax&axios 사용 시 연결되어 사용됨)

  • doGet() 실습

  • step1. doGet() 출력(JSON 형식)

  • step1. doGet() 출력(List&Map) 형식)

  • step2. Redirect 활용 JSP 출력(http://localhost:8000/mime/json2.do -> jsonTest.jsp로 URL 바뀜)

리액트와 연동 시
1-3 패턴 어떻게 활용되나요?
뷰계층, 모델 계층을 어떻게 연결해야되는지 걱정될 때
데이터셋은 서블릿에게 맡길 것인가 아니면 JSP 에게 맡겨도 될까?(둘 다 가능하다면 어떤 선택이 나은가?)
생각해 볼 문제? 마임타입 - application/json
그럼 DB 연동 처리결과는 누가? 서블릿
그 결과를 JSP로 넘겨야 하나? 직접 서블릿에서 내보내도 되지 않나?
완결편
Servlet -. Java(ssssDao.java) -> 리턴타입 :List -> 서블릿-> 스프링의 Model -> 리액트 출력시 사용


프로그램 설계는?

  • 클래스 간 결합도를 낮춰야 한다
  • 어떻게?
    - [[추상클래스]], [[인터페이스]] 중심 코딩을 전개
    - 즉, [[구현체 클래스]](메소드 오버라이딩) 설계를 통해 객체를 주입([[DI]]) & 제어역전([[IoC]])
    - 관심사를 분리하여 '입력/처리/출력' (MVC 패턴 모방) 독립적으로 설계

Pojo 실습

내가 과연 실습 프로그램에 대해 이해했을까?
1. ActionForward의 활용 방법은 뭘까?
- ActionForward의 인스턴스로 전변 사용 가능
- 컨트롤계층 탄 뒤 처리하는 JAVA 경유하고 반환값을 JSP 페이지에 유지 또는 처리
2. 전변 path에 어떤 정보를 담을 것인가?
- 컨트롤계층에서 돌려받은 정보를 통해 getPath() 호출
- path전변에 담긴 정보는 응답 처리해 줄 페이지 이름으로 사용
3. isRedirect는 왜 boolean으로 했나?
- 반환값에 따라 true => sendRedirect(), false => forward()할지 결정하는 용도로 활용

강의 마무리

  • Pojo 코드 확인

1개의 댓글

comment-user-thumbnail
2023년 12월 5일

멋있어요😄

답글 달기