Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
Tags
- "
- 로그인화면
- 버리자
- 페이지이동
- 동기부여
- 향상된 for문
- 파일 호출
- 팝업창
- 빈즈
- Import
- \
- 자바빈즈
- target
- 미래직장
- ;
- scanner
- 동기 부여
- 파일호출
- 영감
- javaBeans
- 페이지 이동
- session.setAttribute
- static
- session.getAttribute
- session.removeAttribute
- 데이터사이언스
- iframe
- Alert
- opener
- BEANS
Archives
- Today
- Total
갈림길 이정표
[JSP] jsp 스크립트 4가지 태그 본문
기본 <% ... %>
더보기
- <%@ ... %> : 페이지에 대한 정보 설정 → 해당 jsp 파일 환경, 속성 설정
- <%! ... %> : 멤버변수 또는 메소드 선언 → <% %>내에서 처리되는 변수나 메소드 범위를 전역으로 설정되게 하고 싶을 때
- <% ... %> : _ jspService( ) 내에 그대로 옮겨짐 → ≒ java 랑 비슷하다고 보면 됨. 여러줄 작성 가능
- <%= ... %> : _ jspService( ) 내에 그대로 옮겨짐. 단, out.print( );으로 변경 됨 → 한줄만 작성 가능, 이미 내장 객체 out 의 print 메소드로써 사용된다고 간주 되기 때문에 세미콜론(;) 필요없음!
- <%-- ... --%> : 주석 처리 (※ 단, 페이지 속성 <%@ ... %> 내에서는 사용 불가)
종류 | 구문 | 주석으로 처리되는 시점 |
JSP 주석 | <%-- ... --%> | Servlet 코드로 변환될 때 |
HTML 주석 | <!-- ... --> | 브라우저에 의해 응답이 parsing 될 때 |
Java 주석 | // 또는 /* ... */ | Servlet 소스가 compile 될 때 |
※어차피 JSP도 HTML 태그를 쓸 수 있기 때문에 <!-- .. --> 사용 가능
[jspStart.jsp]
<%@page import="java.util.Date"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%> <%-- 지시어는 앞에다가.. --%>
<%-- 자바를 숨겨버림 --%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSP</title>
</head>
<body>
<h1>안녕</h1><h6>난 JSP야!!!</h6><br>
<!-- ModelⅠ방식 -->
<% //스크립틀릿: 이 <% \%\>블럭 안에 있어야 java로 인정 (html 소스코드 에선 안보이는 부분)
String ir = "홍길동";
out.println(ir + "의 홈페이지임을 선언하노라"); //print[ln]은 내장객체
for(int i = 1; i < 7; i++){ //소스코드(Ctrl + U)와 자바코드 비교하기
out.print("<h" + i + ">");
out.print("jsp글자 크기 바꿔보기");
out.println("</h" + i + ">"); //println: html소스코드 보기 좋게 한줄 띄기 (출력후 커서 위치 다음줄)
}
%>
<!-- ※ ModelⅡ방식 (MVC방식) -->
<hr>
여긴 html
<br>
<% //자바를 쓰다가 html 쓰고 싶을땐 내장객체 (ex.print();) - 보통 여러줄
out.print("날짜 및 시간은 ");
out.println(new java.util.Date()); //java.util.Date() 쓰고 ctrl+space 하면 알아서 import 되고 Date로 바뀜 (지금은 적용안된 상태)
%>
<br>
<!-- html을 쓰다가 자바를 쓰고 싶을 땐 <\%= Only 한줄 자바 %\> -->
날짜 및 시간은 <%= new java.util.Date() %> <!-- 이게 더 깔끔 (※세미클론(;)은 뺄것! -->
<hr>
<%
int a = 0, sum = 0;
do{
a++;
sum += a;
}while(a < 10);
%>
<%="합은 " + sum + " (java - do while문)"%>
<!-- JSP의 문제: 난독 (java와 html 왔다갔다)-->
<%= ir + "님의 전화번호는 " + tel%> <!-- 해결: 자바빈즈, .... -->
<!-- JSP안에 변수들은 모두 지역변수이므로 초기값있어야 됨 --> <!-- JSP는 순서 중요! 그리고 세미클론 <\%=%>쓸 경우 뺄것!! -->
<%! String tel = "111-1111";%> <!-- <\%!(선언부): 전역변수 선언할 수 있고 순서 상관없음 -->
<%-- tel은 클래스의 멤버 필드 --%>
<%!
//JSP자체가 메소드 이므로 이렇게 할거면 Class의 멤버가 되게끔하면 됨
public int add(int m, int n){ //클래스의 멤버 메소드
return(m + n);
}
%>
<br>
<%
out.println(add(4,5));
%>
<%= add(4,5) %>
</body>
</html>
'Programming Language > Servlet & JSP' 카테고리의 다른 글
[JSP] 인클루드(Include) 지시어 (0) | 2020.08.26 |
---|---|
[JSP] 페이지 지시어 / HTTP 코드 오류창 변경 (0) | 2020.08.25 |
[Servlet] Example 2. 간단한 게시판 만들기 (feat.JDBC) (0) | 2020.08.25 |
[Servlet] Example 1. 간단한 쇼핑몰 만들기 (feat. Session, DTO) (0) | 2020.08.25 |
[Servlet] 작동이 안될 때 (0) | 2020.08.25 |
Comments