728x90
반응형

 

JSP(Java Server Page)

HTML코드에 JAVA코드를 넣어 동적웹페이지를 생성하는 웹어플리케이션 도구(기술)을 말한다. html언어만으로는 database를 연결한거나 끌어오는 방법도 어렵고, 동적인 긴으을 구현하는 것도 한계가 잇어 이 부분을 보완하여 나온 기술이 jsp기술이다. jsp는 apache tomcat과 같은 웹애플리케이션 서버(was- Web Application Server)에서 제공하는 기술이다.

jsp에서 제공되는 대표 기본 태그 종류

1. 선언태그(=선언부, declaration): 전역변수선언, 전역메소드 선언 등을 기술할 때 사용하는 태그(순서상관없음)
형식 : <%! %>
<%!
int sum(int a, int b){
return a + b;
}
%>
<%!
System.out -> console창에서만 출력됨
%>
out.print -> 브라우저창 출력
2. 지시태그(=지시부, directive) : jsp페이지의 언어 설정, 인코딩 설정, 에러페이지(try~catch같은) 설정, 라이브러리 추가, 다른 페이지 연결 등 전반적인 페이지에 대한 속성을 지시할 때 사용하는 태그
형식 : <%@ %>
<%@
page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"
%>
3. 실행태그(=실행부, scriptlet) : jsp페이지 내의 전반적인 실행코드를 기술, 반복문, 조건문, 출력문, 지역변수 선언 등등
실행태그에 기술된 코드를 선언태그에서 호출은 불가
형식 : <% %>
<%
out.println("2 + 3 = " + sum(2, 3));
%>
4. 표현태그(=표현부, expression) : out.print() 또는 out.println() 메소드를 태그로 표현한 것.
세미콜론x을 절대 쓰지 않는다. 출력한 값만을 넣을 수 있다.
형식 : <%=값%>
<%=
System.out.print() -> 콘솔창에서만 출력됨
<%= application.getAttribute("fruit" %>
out.print 자체 내장되어 있음
5. 주석태그(=comment) : jsp태그를 무효화 시키거나 코드에 영향을 끼치지 않는 도움말 등을 기술할 때 사용하는 태그
중요한 부분은 주석으로 기재x
형식 : <%-- 주석처리할 내용 --%>
html주석 - 개발자모드에서 보임
<!-- <p>test1</p>-->

jsp주석 - 보이지 않음
<%-- <p>test2</p> --%>
6. 동적태그(=action tab) : 자바빈(javaBean)사용 및 연결 동작과 관련된 기능을 기술할 때 사용하는 태그
형식 : <jsp:액션명/>
또는 <jsp:액션명 필요한코드 기술> </jsp:액션명>
 

 

02_01_declaration01.jsp

02_01_declaration01.jsp

<!-- 지시태그 -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scripting Tag</title>
</head>
<body>
	<!-- 선언태그 -->
	<%!int data = 50; %>
    
	<!-- 실행태그 -->
	<%
		out.print("Value of the variable is:" + data+"<br>");
		
		String data="하하하";
		out.print("2_Value of the variable is:" + data);
	%>
	<%= data %>
</body>
</html>

 

02_01_declaration02.jsp

02_01_declaration02.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scripting Tag</title>
</head>
<body>
	<%!
	int sum(int a, int b){
		System.out.println("선언태그");
		//System.out은 console에서만 출력됨
		return a + b;
	}
	%>
	<%
		System.out.println("지시태그");
		out.println("2 + 3 = " + sum(2, 3));
		System.out.println("지시태그2");
	%>
</body>
</html>​

 

02_01_declaration03.jsp

02_01_declaration03.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<%!String makeItLower(String data) {
		return data.toLowerCase();
	}%>
	<%
		out.println(makeItLower("Hello World"));
	%>
</body>
</html>

 

728x90
반응형

+ Recent posts