일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- java
- Git_정리
- Spring_오류정리
- Git_명령어정리
- git
- spring
- json
- CSS
- SQL
- 자바
- SQL_용어정리
- asp.net
- 인덱스
- Linux
- DML
- 자바스크립트
- vb.net
- 인스턴스
- Spring_에러정리
- MySQL
- workbench
- 배열
- 이클립스
- Linux_명령어정리
- github
- JavaScript
- 아파치톰캣
- jsp
- HTML
- 다이어그램
- Today
- Total
데브마우스
[JSP]JSP의 3가지 스크립트 태그와 주석 태그 정리 본문
JSP의 스크립트 태그
JSP는 태그를 사용하여 HTML 코드 안에 자바 코드를 작성합니다. HTML 부분은 HTML의 태그 그대로 작성되지만 Java 코드를 삽입하기 위해서는 JSP의 3가지 스크립트 태그 작성 방법 중 하나로 작성해야합니다.
JSP의 스크립트 태그는 3가지 종류가 있습니다.
스크립트 태그 종류 | 작성 방법 | 설명 |
선언문(declaration) | <%! ··· %> | - 자바 변수나 메소드를 정의하는 데 사용합니다. (전역 변수 혹은 메서드 선언입니다.) |
스크립틀릿(scriptlet) | <% ··· %> | - 자바 로직 코드를 작성하는 데 사용합니다. (특정 함수 안을 의미합니다.) |
표현문(expression) | <%= ··· %> | - 변수, 계산식, 메소드 호출 결과를 문자열 형태로 출력하는 데 사용합니다. |
선언문(Declaration) <%! ... %>
선언문 태그는 변수나 메소드 등을 선언하는 태그입니다.
선언문 태그에 선언된 변수와 메소드는 서블릿(Servlet)으로 번역될 때 _jpsService() 메소드 외부에 배치되므로 JSP 페이지 임의의 위치에 선언할 수 있습니다. 심지어 스크립틀릿 태그보다 나중에 선언해도 스크립틀릿 태그에서 사용할 수 있습니다.
선언문 태그로 선언된 변수는 서블릿 프로그램으로 번역될 때 클래스 수준의 멤버 변수가 되므로 전역변수로 사용됩니다.
아래는 선언문으로 변수 count를 선언하고 0으로 초기화하는 코드입니다.
<%! int count = 0; %>
스크립틀릿(Scripltet) <% ... %>
자바 로직 코드를 작성합니다.
스크립틀릿 태그에서 참조하면 _jspService() 메소드 내부에 들어갑니다.
아래는 스크립틀릿 예제 코드로써 변수를 선언하고 함수를 호출하는 코드입니다.
<body>
<%
int a = 2;
int b = 3;
int sum = a + b;
out.println("2 + 3 = " + sum);
%>
</body>
표현문(Expression) <%= ... %>
out.println과 유사하게 변수, 계산식, 메소드 호출 결과를 문자열 형태로 웹 브라우저에 출력합니다.
표현문 태그를 이용하여 선언문 태그 또는 스크립틀릿 태그에서 선언된 변수나 메소드의 반환 값을 외부로 출력할 수 있습니다.
기본 데이터 타입과 자바 객체 타입도 사용 가능합니다.
이 때, 기본 데이터 타입은 toString()을 통해 출력됩니다.
자바 객체 타입은 java.lang.Object 클래스의 toString() 메소드를 사용하거나 자체에서 선언한 toString()을 사용하여 출력됩니다.
아래 코드는 선언문 태그로 선언한 변수 hw를 표현문을 통해 사용자의 웹 브라우저로 출력시키는 코드입니다.
<%! String hw = "Hello, World!"; %>
<%= hw %>
JSP의 주석 태그
JSP도 주석을 지원합니다. HTML과 유사하게 --2개로 작성합니다.
JSP 태그 주석 | HTML 태그 주석 |
<%-- --> | <!-- --> |
'JSP > JSP: 정리' 카테고리의 다른 글
[JSP]taglib 디렉티브 태그 (0) | 2023.12.10 |
---|---|
[JSP]웹 서버, 웹 컨테이너, 웹 애플리케이션 서버의 차이점 (0) | 2023.12.10 |
[JSP] include 디렉티브 태그 정리 (0) | 2023.12.07 |
[JSP] 디렉티브 태그의 개요와 page 디렉티브 태그 정리 (0) | 2023.12.01 |
[JSP]JSP(Java Server Pages)의 개요 (0) | 2023.11.28 |