記錄

선언<%! >, 표현식<%= >, 지시자<%@ >, 주석처리 본문

Web/JSP

선언<%! >, 표현식<%= >, 지시자<%@ >, 주석처리

surhommejk 2017. 12. 1. 15:06



<%    %> 내에서는 java코드를 넣는 것이 되므로 자바에서 쓰던 '//' 과 '/* */'을 사용 할 수 있다. 또 jsp자체가 html이므로 html의 주석인 <!--  -->도 사용 할 수 있다. 그리고 jsp용 주석인 <%--  --> 역시 사용 할 수 있다.


이렇듯 주석으로 사용이 가능한 방식은 많이 있지만 내가 알아두면 좋은 것은 결국 브라우저에서 소스보기로 볼 수 있는 주석은 html로 들어가게 되는 주석이라는 사실이다. out.print로 넣는 코드 자체가 모두 html이므로 웹페이지 상에서 소스보기로 볼 수 있는 주석은 오로지 <!--  -->과 out.print("<!--  -->") 안에 있는 주석 밖에 없다.


응답(response)은 오로지 html의 형태로 하기 때문이다.













선언, 표현식, 주석 실습



<%@ 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 i =0;
    String str = "abcde";
    
    public int plus(int a, int b){
        return a+b;
    }
    %>
    
    <%
    out.print(i + "<br/>"); 
    out.print(str + "<br/>");
    out.print(plus(5,10) + "<br/>");
    %>
    
    <br/><br/><br/>
    
    <%= i %><br/>
    <%= str %><br/>
    <%= plus(5,10) %><br/>
        
    <br/><br/><br/>
    
    <%
    out.print("<!-- 주석 테스트 -->"); //<-- 소스보기에서 html로서 나와야함
    // 주석 테스트   <-- 이건 소스보기에 나오지 않아야 함
    %>

</body>
</html>












<%@ page ~~ %> 지시자



<%@ page  %>는 이클립스가 필요한 것을 자동완성 해주기 때문에 개념을 잘 알고 있으면 된다

-> 라고 인강에서 말해줬는데 이상하게도 내 컴퓨터에서 자동으로 잡아주지 않아서 일일이 내가 import문을 쳤다.


<%@ page import="java.util.*" %> <%// <-- 이 부분에서 java.util.* ; <-이걸 넣으니까 작동하지 않음> %>
<%@ 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[] ab = {1,2,3,4,5};
    out.print(Arrays.toString(ab));
    %>

</body>
</html>


그리고 맨 위 import문에서 ' ; ' <-- 을 찍어주니 되려 오류가 났다.

미세팁이지만 당황할 수 있으니 꼭 기억해 둘 것.

정리: <%@ page import.~  %> 문에서 마지막에 ' ; '은 넣지 않는다!! 










<%@ include ~~ %> 지시자




<body>

    <%
    int[] ab = {1,2,3,4,5};
    out.print(Arrays.toString(ab));
    %><br/>

    <%@ include file = "includeTest.jsp" %><br/> // <-- 여기서도 ' ; ' 을 넣지 않았다!
    
    <%
    out.print(Arrays.toString(ab));
    %>
    
</body>


지시자를 사용 할 때에는 끝에 ' ; ' 을 쓰면 안된다는 것을 알게 되었다








taglib 지시자 (나중에 한다고 해서 일단 보류)

'Web > JSP' 카테고리의 다른 글

jsp액션태그 - forward, param, include  (0) 2017.12.03
request, response  (0) 2017.12.01
스크립트릿  (0) 2017.12.01
JSP 동작원리, 개념, 내부객체  (0) 2017.12.01
초기화 파라미터(init-param), WebListener  (0) 2017.11.28
Comments