Web Dev

63일차 Study

수오니니 2022. 1. 13. 11:29

<<스터디 주제>>

- JSP

 

<<스터디 내용>>

 

지시어(Directive)

1. page Directive

: JSP 문서(웹프로그램)에 필요한 정보를 제공하도록 지시

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>

contentType="application/vns.ms-excel

⇒ ms엑셀로 응답한다!

page Directive 중 ‘isErrorPage=”true” 시 내장객체 중 Exception 발생!!

⇒ 많이 사용하지 않음.

에러페이지는 프로그램 마지막에 작성하는 것을 권장

개발완료 후 배포전에 web.xml에 에러페이지 관련 설정하는 것이 효율성 높음. 작업하기 수월.

예외는 exception-type이 에러코드보다 더 우선순위로 표시된다.

 

2. include Directive

:JSP 문서에 외부 파일의 코드를 포함하도록 지시

.jspf 파일 : WAS가 컴파일하여 Servlet으로 변환이 안됨.

단순 txt파일처럼 사용할 수 있음.

다른 jsp파일에 코드로써 포함이 목적인 파일. 요청에 대한 응답 안됨!

txt파일로 만들어도 되긴하지만 jspf라고 하는게 개발자들간의 약속!

일반적인 텍스트 파일과 다른점은 java 코드를 사용할 수 있음.

jsp파일에 포함(include)해서 사용할 때 필요함 (코드를 줄이기 좋을듯)

  • a 태그의 경로는 가능하면 절대경로를 사용할 것!!!

include directive와 include 표준액션태그의 차이 명확하게 알기

META-INF : DB관련

WEB-INF : WEB관련(WAS)

 

3. taglib Directive

: JSP 문서에 태그 라이브러리 파일의 Java 태그를 포함하도록 지시

 

커스텀 태그

JSP model 2

: jsp 문서에 자바코드가 하나도 없고, 커스텀 태그를 통해 java코드를 구현되게 하는 방식

  • JSTL : 필요한 커스텀태그를 모아둔 라이브러리.

태그 클래스

.tld (tag library discriptor) - xml 파일로 만듬.

일반적인 xml는 엘리먼트를 맘껏 만들어도됨

tld는 커스텀태그를 등록하기 위한 파일, dtd파일, xml스키마 파일을 불러다 사용함.

tld는 “규칙!(DTD, XML Schema)”에 맞게 만들어 사용해야함!!!

DTD보다 Schema 파일이 강력함!!

Namespace에서 no prefix를 통해 접두사 없이도 접근가능하게 설정 후 만듬

불러들인 Schema파일을 통해 자식 엘리먼트를 만들어 사용하겠다!

name : display 태그를 사용하면 tag-class 의 클래스 파일이 객체로 생성되며 dostarttag,doendtag가 실행됨.

 

내장객체

useBean, forward 액션 태그를 위해 필요한 개념.

: WAS 프로그램에 의해 JSP 문서에 기본적으로 제공되는 Java 객체(인스턴스)

  1. page(HttpJspPage) : JSP 문서정보를 저장하여 제공하기 위한 인스턴스(메소드의 this와 유사)
  2. config(ServletConfig) : WAS 프로그램에 등록된 값을 제공하기 위한 인스턴스
  3. out(JspWriter) : 클라이언트에게 전달할 응답 문서를 생성하기 위한 인스턴스(출력스트림)
    → <%=(익스프레션) 을 써도 out.println이 내부적으로 작동됨
  4. request(HttpServletRequest) : 클라이언트의 요청정보를 제공하기 위한 인스턴스
    →request.getParameter 시 사용 등 요청값 전달
  5. response(HttpServletResponse) : 클라이언트의 응답정보를 제공하기 위한 인스턴스
  6. session(HttpSession) : 클라이언트와의 연결 지속성을 제공하기 위한 인스턴스
    → session 속성값을 [false]로 설정된 경우에 unBinding되어 내장객체 생성.
  7. application(ServletContext) : 서버의 컨텍스트 정보를 저장하여 제공하기 위한 인스턴스
  8. pageContext(pageContext) : JSP 문서에 필요한 Java 객체를 제공하기 위한 인스턴스(WAS가 알아서 만들어주긴 하지만 알고 있어야함)
  9. exception(Throwable) : JSP 문서 실행시 발생되는 예외를 저장하여 제공하기 위한 인스턴스
    page Directive의 isErrorPage 속성값을 [true]로 설정된 경우에만 제공되는 내장객체

'Web Dev' 카테고리의 다른 글

67일차 Study  (0) 2022.01.20
66일차 Study  (0) 2022.01.18
62일차 Study  (0) 2022.01.11
61일차 Study  (0) 2022.01.11
60일차 Study  (0) 2022.01.07