jsp란?

👊 jsp(JavaServer Pages)란 무엇인가?

  • jsp는 JavaServer Pages의 약자이며 html코드에 java코드를 넣어 동적 웹페이지를 생성하는 웹어플리케이션 도구이다.
  • jsp가 실행되면 자바 서블릿으로 변환되며 웹 어플리케이션 서버에서 동작되면서 필요한 기능을 수행하고 그렇게 생성된 데이터를 웹페이지와 함께 클라이언트로 응답한다.
  • jsp는 서블릿 기반의 서버 스크립트 기술이다.
  • html+ java = html를 중심으로 java와 연동하여 사용하는 웹 언어이다.

스크립트 태그

  • html코드에 자바 코드를 넣어 프로그램이 수행할 기능을 구현할 수 있다.
    ✍️ 선언문(declaration)
    : <%!...%>
    :자바의 변수나 메소드를 정의하는데 사용되는 태그

  • 스크립틀릿(scriptlet)
    :<% ... %>
    :자바 변수 선언 및 자바 로직 코드를 작성하는데 사용

  • 표현문(expression)
    :<%= ... %>
    :변수, 계산식, 메소드 호출 결과를 나타내는 태그

  • 주석
    : <%---%>

  • 지시자:페이지 속성 지정%@...%

⭐ 내장객체

  • 내장객체란

  • jsp페이지 내에서 제공되는 특수한 클래스 형의 객체

  • 내장 객체는 선언과 할당 없이 사용할 수 있다.

  • 디렉티브 태그

  • <%@ include file = "파일명" %>
    -현재 jsp페이지의 특정 영역에 외부 파일의 내용을 포함시키는 태그이다. 보통 header와 footer는 대부분의 페이지에 동일한 내용으로 작성되기 때문에
    유지 보수 및 편의를 위하여 외부 파일로 만든 후 include하여 사용한다.

    액션태그 - 행위에 대한 태그

  • jsp페이지에서 동일한 내용이라도 자바 코드를 기술하기 보다는 태그를 기술하는 것이 지저분하지 않고 깔끔하게 코딩할 수 있어 가독성 높은 소스코드를
    작성할 수 있다. 또한 코드양을 대폭 줄일 수 있다.

  • 페이지와 페이지 사이를 제어하거나 다른 페이지의 실행결과 내용을 현재 페이지에 포함하거나 자바빈즈(객체)등의 다양한 기능을 제공한다.

  • 액션 태그는 xml문법을 따른다. 즉 시작 태그와 함께 반드시 종료 태그를 포함해야 한다.

  • 액션 태그의 기본 형식 :
    <jsp:..속성 = "값">내용</jsp:..>

  • 내용이 없는 액션 태그의 형식: <jsp:..속성 = "값"/>

✍️ 액션 태그 종류

  • forward(<jsp:forward />)
    :다른 페이지로의 이동, 페이지 흐름제어
  • include(<jsp:include/>)
    :외부 페이지의 내용을 포함하거나 페이지 모듈화
  • param(<jsp:param/>)
    :현재 페이지에서 다른 페이지에 정보를 전달할 때 사용
  • useBean(<jsp:useBean/>
    :빈을 생성하고, 사용하기 위한 환경을 정의하는 액션 태그
  • setProperty(<jsp:setProperty/>)
    :빈에서 속성 값을 할당
  • getProperty(<jsp:getProperty/>)
    :빈에서 속성값을 얻어올 때 사용

페이지 이동

✍️ forward

  • request에 담긴 값이 유효하다. (request, response가 유지)
  • 이동된 url이 화면에 안보인다. (사용자는 이동했는지 알 수 없음)
  • 포워드 하는 방법
    pageContext.forward("이동할 페이지")
    <jsp:forward page = "이동할 페이지" /)
    ✍️ redirect
  • 클라이언트가 새로 페이지를 요청한 것과 같은 방식으로 페이지가 이동됨, request,response가 유지되지 않는다.(새로 만들어짐)
  • 이동된 url이 화면에 보인다
  • 리다이렉트 하는 방법
    response.sendRediect("이동할 페이지");
profile
초보 개발자 이야기

0개의 댓글