[JSP] 스크립트 요소(스크립틀릿, 선언부, 표현식)

JSP 스크립트 요소

  • 스크립틀릿
  • 표현식
  • 선언부
스크립틀릿

- JSP에서 자바코드를 실행할 때 사용하는 자바코드블록.

- <% %> 사이에 자바코드가 온다.

<%
    자바코드1;
    자바코드2;
    자바코드3;
    ...
%>

예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	int sum =0;
	for(int i =0; i<=10; i++){
		sum += i;
	}
%>
1부터 10까지의 합은 <%= sum %> 입니다.
</body>
</html>

 

 

표현식

- 어떤 값을 출력 결과에 포함시키고자 할 때 사용.

<%= 와 %> 사이에 출력할 값이 위치.

- 숫자나 문자열, 변수 등의 값을 사용할 수 있음.

<%= 값 %>

예제

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ page import ="java.util.*" %>
<%
	Date now = new Date();
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>현재시간</title>
</head>
<body>
	<div>현재시간: <%= now %></div>
</body>
</html>
선언부

- JSP의 스크립트릿이나 표현식에서 사용할 수있는 메소드를 작성할 때 사용.

- 자바의 메소드와 동일함.

- 메소드 이름 규칙도 자바와 동일하다

 ( 첫글자 문자 또는 언더바(_)로 시작, 첫글자를 제외한 나머지는 문자와 숫자 그리고 언더바의 조합, 대소문자 구분 )

- 선언부를 맨 아래에 선언하고 스크립틀릿에서 선언부에 선언한 메소드를 사용해도 사용할 수 있다.(자바스크립트 호이스팅과 같은 원리인 듯 하다. 아니라면 댓글로 알려주세요 ㅠㅠ)

<%!
    public 리턴타입 메소드명(파라미터 arguments){
    	자바코드1;
        자바코드2;
        ...
        자바코드n;
        return result;
    }
%>

예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%!
	public int multiply(int a, int b){
		int c= a*b;
		return c;
	}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>선언부를 사용한 두 정수값의 곱</title>
</head>
<body>

10 * 25 = <%= multiply(10,25) %>
</body>
</html>

댓글

Designed by JB FACTORY