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

DaramGee·2023년 12월 14일
0

복습

서블릿과 JSP 이해하기

  • 네이버 페이지 접속 후 과정 

    	- 그 과정에 대해 설명할 수 있는 것 필요
  • 우리의 POJO 프로젝트인 naeGym의 경우에도 접속하게 되는 url 부터 바뀌는 페이지 까지의 전반적인 과정과 흐름을 설명할 수 있어야 한다.


get/post

  • request(get,post)

    - 첨부파일 포함된 경우, 반드시 post 방식으로 전송해야 함!! 
    - 바인딩 코드를 간소화하기 위한 HashMapBinder클래스에 있는 bind(), multibind() 두 메소드가 있어서 각 방식에 따라 메소드를 호출하는 것 필요함. 

![[Http 프로토콜]]

✅ Hyper Text Transfer Protocol 서버와 클라이언트간의 TCP/IP 통신 위에서 메시지를 교환하기 위해 사용되는 프로토콜


  • 클라이언트의 요청이 서버에 도달하여 그 응답을 또 클라이언트에게 보내는 것을 말한다.

  • 여기서 말하는 요청 [[request]] 는 클라이언트에서 서버로 가는 것을 말하며, 메소드/url/프로토콜버전/헤더/바디로 구성되어있다.

  • 응답 response는 서버에서 클라이언트로 가는 것을 말하며, 프로토콜 버전, 상태코드, 코드 설명, 헤어 바디로 구성된다.

  • Http 메소드(우리가 프로젝트를 하면서 많이 만나본 친구들이 여기서 나온다.)
    - Get / Put / Post / Delete

  • HTTP 에서 만나는 대표적인 상태 코드!
    - 1%% : 요청 처리 중
    - 2%% : 성공 상태
    - 3%% : 추가 처리 필요
    - 4%% : 클라이언트 요청이 잘못된 경우
    - 5%% : 서버 때문에 발생하는 오류

[!quote] 프로토콜의 특성으론 Statless, 지속연결성이 있다. 이러한 특징으로 인해 우리는 상태를 유지하기 위해 쿠키와 [[Session]]이 필요하다는 것을 이해할 수 있다.


강의 내용

POJO2

  • board 삭제하기 작업

    - 파라미터 타입을 map타입이 아닌 int로 수정해도 된다. 대신 value로 수정 필요.
    - 왜 int로 될까?? 어차피 키값으로 받는 것은 게시판의 글 번호 b_no니까 int로만 받아도 된다!! 
    - insert, update, delete는 모두 id로 쿼리문을 찾는다. 
    - 단, insert는 반환타입이 object로 됨 
    - BoardLogic.java 수정

    - BoardDao.java 수정 

  • board 이미지 업로드 작업

    	- 위에서 이야기 한 것처럼 이미지를 업로드할 때는 get 방식이 아닌 Post 방식을 사용한다. 
    	- 

BoardController

  • board/boardInsert의 입력 처리할 때 과정

    	- insert(ActionSevlet에서 url 처리함) -> "redirect:board/boardList.gd2" -> path에 담겨옴 ->ActionServlet 에서 pageMove[]에 해당 url 넣음(paheMove[0]redirect & pageMove[1]board/boardList) -> path에 담아서 앞에 /, 뒤에 .jsp가 붙어 최종 응답하는 창으로 클라이언트에게 보여진다. 

페이지 번호 처리

  • 페이지 번호 입력 시 주의사항

    - 전체 글 수에 따라 페이지에 몇 개의 글을 나타낼지설정
    - 그 글 수 만큼 페이지를 나누기 위해서 함수는 어떻게 구성해야 할지 설계
    - 클래스 생성(BSpageBar.java) 
    - JSP 화면 단에서 import하여 사용!! 


강의 마무리

  • 내일은 POJO3의 형태 실습 시작

    	- If문의 중첩에서 벗어나서 Spring의 클래스를 코드로 구현해보자 

0개의 댓글