✔️ 문서의 내용을 동적으로 생성하기 위해 사용되는 것
✔️ html태그에서 java를 쓸 수 있게 해주는 태그
JSP 프로그래밍에서 로직을 수행하는데 필요하다.
그러한 부분에서 스크립트 코드를 사용해서 프로그램이 수행해야 하는 기능을 구현할 수 있다.
✔️ java 코드 실행
✔️ <% java 코드 ... %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>sum.jsp</title>
</head>
<body>
<%
int sum = 0;
for(int i = 1; i <= 10; i++) {
sum = sum + i;
}
%>
1부터 10까지의 합은 <%= sum %> 입니다.
<br>
</body>
</html>
1부터 10까지의 합은 55 입니다.
<% int sum = 0; for(int i = 1; i <= 10; i++) { sum = sum + i; } %>
스크립트릿을 사용하여 값을 지정할
sum
이라는 int 타입의 변수를 선언하였고 for문을 이용하여 1부터 10까지의 숫자를 차례대로 변수sum
에 더하였다.
✔️ 어떤 값을 출력 결과에 포함시키고자 할 때 사용
✔️ <%= 값 %>
위의 스크립트릿의 예시에서 표현식을 사용하였다.
<%= sum %>
표현식을 통해 변수
sum
값을 출력한다.
위의 예제는 표현식의 값 부분에 변수가 왔지만, 변수뿐만 아니라 숫자나 문자열 등의 값을 표현식에서 사용할 수도 있다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>expression Sum Ex</title>
</head>
<body>
1 부터 10까지의 합:
<%= 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 %>입니다.
</body>
</html>
1 부터 10까지의 합: 55입니다.
✔️ JSP에서 사용될 변수나 메서드를 선언할 수 있는 영역들의 요소
✔️ <%! public 리턴타입 메서드 이름() {...return...} %>
스크립트릿이나 표현식에서 사용할 수 있는 메서드를 작성할 때 사용된다.
멤버 변수: 선언문에 선언된 변수
선언문에서 선언된 변수는 JSP 페이지가 서블릿 코드로 변환이 되면 서블릿 클래스의 멤버변수로 변환됨
선언문에 선언된 변수는 선언된 위치에 상관없이 모든 메서드에 참조가 가능
➡️ 객체 생성 시에 멤버 변수가 메서드보다 먼저 생성되기 때문
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<%!
public int muliply(int a, int b) {
int c = a * b;
return c;
}
%>
<head>
<meta charset="UTF-8">
<title>useDecl.ex</title>
</head>
<body>
10 * 25 = <%= muliply(10, 25) %>
</body>
</html>
10 * 25 = 250
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<%!
public int add(int a, int b) {
int c = a + b;
return c;
}
public int subtract(int a, int b) {
int c = a - b;
return c;
}
%>
<head>
<meta charset="UTF-8">
<title>useDecl1</title>
</head>
<body>
<%
int value1 = 3;
int value2 = 9;
int addResult = add(value1, value2);
int subtractResult = subtract(value1, value2);
%>
<%= value1 %> + <%= value2 %> = <%= addResult %>
<br>
<%= value1 %> - <%= value2 %> = <%= subtractResult %>
</body>
</html>
3 + 9 = 12
3 - 9 = -6