Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

JSP에서 %> 문자를 화면에 출력하는 방법 – 백슬래시(\)를 활용한 이스케이프 기법

JSP 페이지를 작성하다 보면 스크립틀릿(scriptlet) 문법을 설명하는 튜토리얼이나 기술 문서를 만들 때 %> 문자열을 그대로 화면에 출력해야 하는 경우가 있습니다. 그런데 JSP 컨테이너는 %>를 스크립틀릿의 종료 태그로 인식하기 때문에, 이스케이프 처리 없이 그대로 사용하면 컴파일 오류가 발생합니다.

백슬래시(\)를 이용한 이스케이프 처리

이 문제는 아주 간단하게 해결할 수 있습니다. %> 앞에 백슬래시(\)를 붙여 %\> 형태로 작성하면, JSP 컨테이너는 이를 종료 태그가 아닌 일반 문자열로 인식하여 화면에 그대로 출력합니다.

마찬가지로 여는 태그인 <%도 필요하다면 <\% 형태로 이스케이프할 수 있습니다.

예제 코드

아래 예제는 이스케이프된 구문과 실제 동작하는 표현식(expression)을 함께 보여줍니다.

<html>
   <head>
      <title>A Comment Test</title>
   </head>
   <body>
      <h2>Syntax: <\%= (new java.util.Date()).toLocaleString() %\></h2>
      <p>Today's date: <%= (new java.util.Date()).toLocaleString()%></p>
   </body>
</html>

실행 결과

위 코드를 실행하면 다음과 같은 결과가 브라우저에 출력됩니다.

  • Syntax: <%= (new java.util.Date()).toLocaleString() %> — 이스케이프 처리되어 코드 구문 자체가 텍스트로 표시됩니다.
  • Today's date: 현재 날짜와 시간 — 실제 표현식이 서버에서 실행되어 결과값이 출력됩니다.

정리

JSP에서 %>를 리터럴로 출력하고 싶을 때는 %\>처럼 백슬래시를 앞에 붙이기만 하면 됩니다. 이 방법은 JSP 문법을 소개하는 교육 자료나 코드 예제를 담은 페이지를 만들 때 특히 유용합니다.