본문 바로가기
Front-End

JSP(2)

by newny 2023. 4. 5.
반응형

🔹JSP 페이지 실행 과정

톰캣 WAS에 의해서 .java와 .class가 자동으로 생성된다
예) hello.jsp
컴파일 언어(Java) -> 목적코드(.class) 필요
.jsp -> hello_jsp.java (톰캣) -> hello_jsp.class (컴파일)
예) hello_jsp.java 소스 저장 경로
D:\\java202301\\workspace\\.metadata\\.plugins
\\org.eclipse.wst.server.core\\tmp0\\work
\\Catalina\\localhost\\basic04_web\\org\\apache\\jsp\\form
 

🔹JSP 내장객체 (chapter 09)

  • 톰캣 서버에 의해 자동으로 생성된 객체
  • 개발자는 별도의 객체를 선언하지않고 가져다 사용한다
  1. out : 출력 객체 (JspWriter)
  2. request : 사용자가 요청한 정보를 관리하는 객체 (HttpServletRequest)
  3. response : 요청한 사용자에게 응답을 관리하는 객체 (HttpServletResponse)
  4. session : 요청한 사용자에게 개별적으로 구분하기 위한 객체 (HttpSession)
  5. application : 모든 사용자가 공유하는 값 또는 서버에 대한 정보를 관리하는 객체 (ServletContext)
  6. pageContext : JSP, JSTL, EL 등 현재 페이지 내에서 서로 다른 문법과의 값을 교류 (PageContext)

 

내부 변수

request.setAttribute("변수명", 값);
request.getAttribute("변수명");
 

request

request.getParameter(”해당 태그의 name속성의 값”)

  • 사용자가 입력한 정보를 개별적으로 가져올 때 사용
  • 선택한 태그의 값을 가져옴
  • 태그 선택 방법은 해당 태그의 name속성의 값을 매개값으로 넣어주면됨

 

request.setCharacterEncoding(”문자셋”)

  • 폼 태그 등 클라이언트가 입력한 값을 post방식으로 전달할 값이 한글일 경우 깨지지않게 인코딩할 문자셋을 설정해줌
  • request.setCharacterEncoding("UTF-8"); 조합형
  • request.setCharacterEncoding("EUC-KR"); 완성형

 

request.getParameterValues(”해당 태그의 name속성의 값”)

  • name값이 같은 태그들의 값을 저장할 때 사용
  • String 배열로 값을 리턴함

 

request.getRemoteAddr()

클라이언트 IP 추출
 

request.getRemoteHost()

클라이언트 host값 반환
 

request.getRemotePort()

클라이언트 prot값 반환
 

request.getContextPath()

요청한 자료의 Context root (프로젝트명)
 

request.getRequestURL()

요청한 자료의 URL
 

request.getRequestURI()

요청한 자료의 URI
 

🔹form 태그 관련 다양한 속성들 (chapter 04)

  • form : 사용자가 입력한 정보를 서버로 전송하기 위한 양식
  • name : 폼 이름, 서버에서 식별하기 위한 식별자
  • id : 폼 아이디, Frontend단에서 식별자로 사용
  • method : 폼 전송 방식 (get, post, put, delete 등 방식이 많지만 html에서는 post와 get만 가능), 생략시 기본은 get 방식으로 자동 지정됨
  • action : 사용자가 요청한 정보를 서버가 받아서 처리할 결과 페이지
  • enctype : 폼에서 파일을 첨부해서 서버로 전송하고 할 때 “multipart/form-data” 추가

 

method

get 방식

  • 생략시 기본값
  • 사용자가 입력 요청한 정보가 URL 그대로 노출
  • 한글 안깨짐
  • 사용 예 : 검색
  • 형식 : 요청페이지 또는 명령어?변수=값&변수=값&변수=값...

 
post방식

  • 사용자가 요청한 정보가 URL에 노출되지 않고 패키지화 되어서 서버로 전송
  • Tomcat 9 이하 버전에서는 한글 깨짐
    • 한글이 깨지는 경우 request.setCharacterEncoding("UTF-8"); 사용하여 해결
  • 사용 예 : 비번, 주민번호, 카드번호 등
반응형

'Front-End' 카테고리의 다른 글

JSP 실습 - 여행 예약 페이지 만들기  (0) 2023.04.10
JSP 실습 - 성적 입력, 조회, 수정, 삭제 페이지 만들기  (0) 2023.04.06
JSP(1)  (0) 2023.04.04

댓글