・<%= %> 태그는 html안에 자바의 변수를 넣는데 사용할 수 있다.

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
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
 
    <%!
    int age;
    %>
    
    <%
    age = Integer.parseInt(request.getParameter("age"));
    
    if(age>20){%>
        <jsp:forward page="agePass.jsp">
            <jsp:param name="age" value="<%= age %>"/>
        </jsp:forward>
    <%}
    else{%>
        <jsp:forward page="ageFail.jsp"/>
    <%}
    %>
</body>
</html>
cs










・out.println은 콘솔에 찍는게 아니고, html에 출력할 내용을 전달하는 명령어이다.






































지시자(Directives)

<%@ %>태그 사이에 오는 코드

주로 page 지시자를 사용함

contentType, pageEncoding을 사용하여 문서타입과 인코딩을 설정함

contentType 인코딩은 JSP파일을 HTML문서로 변환할 때 적용되는 인코딩

pageEncoding 인코딩은 그냥 JSP파일에 적용되는 인코딩

요즘은 유니코드를 주로 사용하기 때문에 UTF-8을 주로 사용함(한글 문제가 있을 시 EUC-KR을 가끔 사용)

JSP코드가 사용되는 부분은 HTML에서 공백으로 처리됨

trimDirectiveWhitespaces을 설정하면 공백을 없앨 수 있음

import는 자바 프로그래밍 import와 동일한 역할을 수행

 

선언문(Declarations)

<%! %>태그 사이에 오는 코드

서블릿 클래스의 선언부에 오는 내용이라고 보면 됨 (서블릿을 모르면 그냥 PASS)

함수선언 같은 것을 여기서 할 수 있음

클래스(Class)를 따로 구현해서 임포트하는 구조가 깔끔하기 때문에 선언문을 쓸일이 별로 없음

 

스크립트릿(Scriptlet)

<% %>태그 사이에 오는 코드 (가장 기본이 됨)

자바 프로그래밍에서 할 수 있는 일을 여기서 거의 다 할 수 있음

(if문, for문, while문, switch문 등등)

out.print 함수를 사용하면 화면 출력도 가능

 

표현식(Expression)

<%= %>태그 사이에 오는 코드

내장 객체(Implicit Objects)라고 부르기도 함

출력을 할 내용을 여기에 입력함

out.print()함수의 인자로 생각하면 이해하기 쉬움

즉, <%= 출력할 것 %> 와 out.print(출력할 것)은 동일함

세미콜론(;) 사용하면 에러가 남




+ Recent posts