본문 바로가기
프로그래밍/JSP

[JSP]JSP 기본요소

by jjjhhhhh 2021. 8. 10.
  1. JSP 지시자(지시어) ,JSP Directive
  1. 스크립트 요소, Scripting Elements
  1. 액션 태그, Action Tags

 

  • Servlet / JSP 컨테이너
    • Servlet 과 JSP 를 해석하고 실행하는 프로그램
    • Tomcat
    • WAS ( Web Application Server) : 서버에서 특정 언어를 처리하고 웹 사이트를 만드는 일을 하는 프로그램
    • Web Application = Web site

1. JSP 지시자

  • <%@ ~~~ %>
  • JSP 페이지를 실행하기 위해 JSP 컨테이너(실행기)에게 해당 JSP 페이지를 처리하게 하기위한 여러가지 환경 설정을 한다.
    a. page 지시자

    • <%@ include file="URL" %>
    • 특정 JSP/HTML 페이지를 현재 JSP 페이지의 일부 영역에 삽입
    • <iframe> 과 유사
    • 페이지 지시자 외에 나머지 소스 전체를 가져온다 → 불러올 파일은 필요한 조각만 남겨둔다.
    • 페이지의 일부로 삽입되기 때문에, 부모 페이지와 중첩되면 안되는 코드가 있는지 항상 확인한다.(<html>, <body> ...)
    • 한 번 만들어준 파일을 다른곳에 써먹을 수 있다.
    <div><%@ include file="inc/menu.jsp" %> </div>
    <div style="padding: 100px 0;">본문 </div>
    <div><%@ include file="inc/copyright.html" %> </div>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    
    	<!-- inc/menu.jsp  -->
    	<table border width="100%">
    		<tr>
    			<td>메뉴</td>
    			<td>메뉴</td>
    			<td>메뉴</td>
    			<td>메뉴</td>
    			<td>메뉴</td>
    		</tr>
    	</table>

    • 액션 태그와 관련된 요소

     

  • c. taglib
  • b. include 지시자
    • <%@ page ~~~ %>
    • <%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
      1. language
        • JSP 페이지에서 사용할 프로그래밍 언어 지정
      1. contentType
        • 현재 페이지의 콘텐츠에 대한 기술
        • text/htmlm text/plain, image/jpeg, image/gif, application/json, text/xml : MIME
        • contentType ="text/html; charset=UTF-8"
        • UTF-8 : 톰캣에게 현재 JSP가 UTF-8 로 인코딩 되었다고 알려줌
      1. pageEncoding="UTF-8"
        • UTF-8 : 브라우저에게 돌려줄 페이지의 인코딩을 지정
      1. import
        • 패키지 or 클래스 참조
        • 자바의 import와 동일한 역할
        <%@ page import="java.util.Random" %>
      1. errorPage
        • 에러 페이지로 사용할 페이지의 URL 지정
        • 에러 발생시 미리 준비한 페이지로 이동
        <%@ page errorPage = "URL" %> 

2. 스크립트 요소, Scripting Elements

  • <% %>
  • 자바를 사용할 수 있게 한다.
  • 서블릿과 유사한 작업 환경을 만들어 준다.
a. 스크립틀릿 , Scriptlet
  • Script + Applet (웹페이지에 삽입되는 프로그램, ActiveX)
  • <% %>
  • 이 영역은 자바 영역이다(*.java 파일이라고 생각하고 코딩하면 된다.)
  • 역할 : 비즈니스 코드(업무 코드)a. 데이터 처리
  • b. 동적 HTML (CSS, JavaScrpit) 처리
  • 사용빈도 높음
<% 
int a= 10; int b = 20;
String color = "blue";
%>

 

 

b. 익스프레션, Expression
  • <%= 값 %>
  • 값 : 상수 , 변수 , 메소드 반환값 등...
  • System.out.println() 와 비슷한 역할
  • 출력 목적 : HTML 소스의 일부를 작성하기 위해서 (***********)
<style>
	div { color : <%= color %> ; } 
</style>

<div>
<%= a %> 
</div>

<div> <%= b %> </div> 

 

c. 선언부 , Declaration

  • <%! %>
  • 현재 JSP 페이지에서 사용할 멤버 변수와 멤버 메소드를 선언하는 영역
  • 잘 사용 안함 > 다른 사용 방법이 있다. > java 파일을 만들어 import 하기
<%! 
	public int sum(int a, int b ) {
		return a+b;
//현재 페이지에서만 사용 가능한 메소드

	};
%> 
--------------------------------------
<%@page import="com.test.jsp.Ex05"%>
<% 
	Ex05 ex05 = new Ex05();
%> 
//Ex05 
package com.test.jsp;

public class Ex05 {
	public	int sum(int a, int b) {
		return a + b;
	}
}
  • 현재 페이지에서만 사용 가능한 단점이 있다

 

 

3. 액션 태그 , Action Tags

  • <jsp: ~~~> , <c: ~~~>
  • JSP에서 만들어낸 태그
  • HTML 태그 : 정적, 표현 목적
  • JSP 태그 : 동적 , 프로그래밍 기능 목적
  • ex ) <c:if> : if문 , <c : for > : for문a. JSP 기본 액션 태그c. 사용자 정의 액션 태그
  •  
  • b. JSTL 확장 액션 태그

 

 

'프로그래밍 > JSP' 카테고리의 다른 글

쿠키 , cookie  (0) 2021.09.01
[JSP]EL , Expression Language  (0) 2021.08.10
[Mac][맥] JSP - Tomcat 8.5 + Eclipse 셋팅  (0) 2021.07.08