JSP
[JSP] 스크립트 ( 선언문,스크립트릿,표현식)
JY2
2021. 7. 21. 17:01
JSP 스크립트 태그
스크립트 태그는 JSP페이지에서 자바코드를 사용하고 싶을 때 사용하는 문법이다.
선언문 (declaration) |
<%! .. %> | 변수나 메소드를 정의하는 영역 |
스크립트릿 (scriptlet) |
<% .. %> | 모든 자바 코드를 사용할 수 있는 영역 |
표현식 (expression) |
<%= .. %> | 변수, 메소드 리턴값 등등 결과값을 문자열 형태로 출력 |
예제
JSP페이지에서 글자색, 배경색을 각각 빨간색으로 만들어주는 메소드를 선언후 사용
우선 JSP 페이지를 생성한다.
1
2
3
4
5
6
7
8
9
10
11
12
|
<%@page import="java.io.PrintWriter"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
</body>
</html>
|
cs |
선언문을 사용하여 createRedText(), createBackgroundColorRedText() 라는 메소드를 두개 생성
style이 빨간색으로 적용된 html 코드를 생성하는 format을 return하는 메소드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<%!
private String createRedText(String text){
return String.format("<div style='color:red;'>%s</div>",text);
}
private String createBackgroundColorRedText(String text){
return String.format("<div style='background-color:red; color:white;'%s</div>",text);
}
%>
|
cs |
메소드에서 받은 값을 표현식을 사용하여 html에 바로 출력
1
|
<%=createRedText("빨 간 글 씨 ")%>
|
cs |
스크립트릿을 사용하여 자바 반복문을 이용한 여러줄 출력도 가능하다.
1
2
3
4
5
|
<%
for(int i=0; i<3; i++){
out.print(createRedText("<h1>Hello</h1>"));
}
%>
|
cs |
전체코드
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
31
32
33
34
35
|
<%@page import="java.io.PrintWriter"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%
for(int i=0; i<3; i++){
out.print(createRedText("<h1>Hello</h1>"));
}
%>
<%=createRedText("빨 간 ")%>
<%!
private String createRedText(String text){
return String.format("<div style='color:red;'>%s</div>",text);
}
private String createBackgroundColorRedText(String text){
return String.format("<div style='background-color:red; color:white;'%s</div>",text);
}
%>
</body>
</html>
|
cs |