JSP/JSP 정리

[JSP] JSP 기본태그(수정 159)

h0-0cat 2023. 6. 1. 00:05
728x90

JSP 기본태그

HTML이나 자바스크립트에 의해 작성된 페이지들은 그 페이지를 사용하는 사용자와 상관없이 항상 동일한 내용만을 제공해주는 정적 페이지입니다.

 

하지만 웹 프로그램들은 사용자에 따라 서로 다른 내용이 제공되어야 하는데 이러한 동적 페이지를 구현하기 위해서는
다음과 같이 JSP 태그를 사용해야 합니다.
종류 사용용도 형식  
스크립트릿(scriptlet) 자바 코드를 기술함 <% %>
선언(declaration) 변수와 메소드를 선언함 <%! %>
표현식(expression) 계산식이나 함수를 호출한 결과를 문자열 형태로 출력함 <%= %>
주석(Comment) JSP 페이지에 설명을 넣음 <%-- --%>
지시자(Directive) JSP 페이지의 속성을 지정함 <%@ %>
긁지않은 개발자 (JSP 기본 태그)

JSP 스크립트 요소

JSP 문서는 확장자가 .jsp로 저장된 파일을 의미하며 이는 웹 서버에 의해 컴파일됩니다.
JSP 문서는 단순히 JSP 태그로만 구성되지 않고, HTML 태그와 함께 사용됩니다. 앞으로는 자바 스크립트와 같은 클라이언트 측 스크립트도 함께 사용할 것입니다.
이렇듯 JSP 문서는 JSP만이 아닌 다양한 구성요소들로 이루어지는데, 프로그램 언어인 자바도 JSP 문서에 함께 기술할 수 있습니다.
JSP 페이지에서는 자바를 사용하려면 특정 태그에 기술해야 합니다.
이러한 기능을 제공하는 JSP 스크립트 요소들은 서버가 인식하는 JSP 태그 중 스크립트릿(scriptlet), 선언문(declaration), 표현식(expression) 3가지가 있습니다.

 

 


스크립트릿

JSP 문서는 HTML 태그와 자바 코드가 섞여 있습니다. JSP 문서는 HTML 태그로 정적 페이지를 디자인하고 웹 서버에서 처리할 문장들을 자바 언어로 부분적으로 기술하는데 이때 사용하는 자바 언어를 서버 스크립트 언어라고 합니다.

•서버 스크립트 언어인 자바를 JSP 문서 내부에 기술하려면 JSP가 제공해주는 스크립트릿 태그를 사용해야 합니다

<!--긁지않은 개발자-->
<%

   웹 서버에서 실행되는 자바 코드를 기술합니다.

%>

JSP에서 자바 코드는 스크립트릿 태그인 <% %> 내부에 기술합니다.

 

 

 

다음은 두 정수값을 더하는 자바 코드를 JSP에서 기술하기 위해서 스크립트릿 태그를 사용한 예입니다.
<!--긁지않은 개발자-->
<%
    int num1 = 20;
    int num2 = 10;
    int add = num1 + num2;
    out.print( num1 + " + " + num2 + " =" + add);
%>

두 정수와 계산된 결과를 화면에 출력하는 코드를 추가하기 위해서는 JSP의 내장 객체인 out을 사용해야 합니다.

out은 출력을 담당하는 JSP 내부객체로서 출력하기 위한 print() 메서드를 사용해야 합니다.

 

 


선언문

JSP에서 변수나 메소드의 선언은 어떻게 하며 화면에 보여 지기 위해서는 어떻게 동작하는지를 알아보겠습니다.
JSP 페이지에서 사용되는 변수나 메소드를 정의하기 위해서 선언문(Declaration)을 사용합니다.
<!--긁지않은 개발자-->
<%! 
    변수를 선언합니다.
    메소드를 정의합니다.
%>

변수 선언

<!--긁지않은 개발자-->
<%! 
   String str="긁지않은 개발자!"; 
   int a=5, b=-5;   
%>

표현식

브라우저에 HTML 형태로 결과를 출력하기 위해서 스크립트릿 태그 내에 jsp 내장 객체 중 출력 담당 outprint 메소드를 사용했습니다.
<!--긁지않은 개발자-->
<%
  out.print(a);
%>
JSP에서 브라우저로 출력을 하기 위해서 사용하는 또 다른 방법은 표현식입니다. 이번에는 표현식을 사용하는 방법을 익힙시다.
표현식(expression)은 변수의 값이나 계산식 혹은 함수를 호출한 결과를 문자열 형태로 웹 문서에 출력할 때 사용되는 태그이며 <%=로 시작하여 %>로 끝냅니다.
<!--긁지않은 개발자-->
<%= 변수 %>
<%= 수식 %>
<%= 메소드 호출 %>

표현식에 기술한 내용은 out.print()의 매개변수가 됩니다. 그렇기 때문에 표현식을 사용할 때 세미콜론(;)을 기술하지 말아야 합니다. 표현식에 세미콜론(;)을 입력했다면 아래와 같이 변환되기 때문입니다.

<!--긁지않은 개발자-->
<%= a ; %>    //개발자가  작성한 표현식을

out.print(a ; ); // 이렇게  웹 컨테이너가 out.print()으로 변환시킴 
// 오류

 

주석문 (comments)

프로그램 작성시 부가적인 설명을 덧붙일때 사용한다.

프로그램에는 아무 영향을 주지않는다.(실행시 주석은 보이지 않음)

<!--긁지않은 개발자-->

<!-- 주석 -->

<%-- 주석 --%>

2가지 방법이 있다.

<!-- 주석 -->

<%-- 주석 --%>


한줄 주석(//)

//를 기술한 위치부터 해당 줄 끝까지에 대해서만 주석으로 간주 합니다.

그러므로 여러줄을 주석처리 하려면 줄 마다 매번 //를 기술해야 합니다.

<!--긁지않은 개발자-->
<%! 
      // 안녕하세요
      // 긁지않은 개발자 
      // 블로그 입니다.
      // 이것은 주석 입니다.
 %>

여러 줄에 거쳐서 사용할 수 있는 주석(/*내용*/)

/*로부터 시작하여 */에 도달하기 전까지의 모든 문장을 주석문으로 간주 합니다.

여러 줄에 대해서 주석 처리할 때 사용 하며, 

자바언어에서 사용 하는 주석문이므로  자바 문법이 기술될 수 있는 <%%> 안에서만 사용가능

<!--긁지않은 개발자-->
<%! 
    /*
         안녕하세요
         긁지않은 개발자 
         블로그 입니다.
         이것은 여러줄 주석 입니다. 
    */
 %>

 

 

지시자

<!--긁지않은 개발자-->
<%! 
 
%>

page 지시자


language 속성


extends 속성


import 속성

 


 

 

 

728x90

'JSP > JSP 정리' 카테고리의 다른 글

[JSP] JSP 액션태그  (0) 2023.06.01
[JSP] JSP 내장객체  (0) 2023.06.01
[JSP] JSP (Java Server Page) 란?  (0) 2023.05.31
[JSP] JSP로 시작하기  (0) 2023.05.31
[JSP] DAO란? DTO란? VO란?  (0) 2023.05.30