[JSP] 스크립트 ( 선언문,스크립트릿,표현식)

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

 

'JSP' 카테고리의 다른 글

[JSP] 특정 페이지로 이동 (forward, redirect)  (0) 2021.07.23
[JSP] HttpServletRequest 객체 (getParameter)  (0) 2021.07.22
[JSP] HttpServlet 서블릿  (0) 2021.07.20
[JSP] 이클립스와 톰캣 연동  (0) 2021.07.19
[JSP] 프로젝트 생성  (0) 2021.07.17

댓글

Designed by JB FACTORY