JSP_architecture.jsp
메서드 및 변수 출력
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import = "java.util.Calendar" %>
<%@ page import = "java.util.Random" %>
<%! // 선언 영역(선언부) : 변수나 메서드를 정의하는 영역(전역변수 개념)
// 원래 많이 사용하지는 않지만, 이해해둘 필요가 있다.
int n = 0; // Java Class를 사용하려면 하나하나 import 해야한다.
Random rnd = new Random();
public int plus (int a, int b) {
return a+b;
}
%>
<%
int random = rnd.nextInt(11) + 1;
System.out.println(random);
int n2 = 0;
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP 구조</title>
</head>
<body>
<p><%= "n++ : " + n++ %></p>
<p><%= "n2++ : " + n2++ %></p>
<p><%= plus(random, random) %></p>
</body>
</html>
서버가 켜있는 상태에서 계속 페이지를 키면,
n++ : 2
n2++ : 0
2
n의 값은 계속 1씩 추가 된다.
빨간색 버튼으로 서버를 종료하고 다시 키면 n값은 초기화가 되어 0이 출력된다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%
String[] fruit_array = {"사과","배","참외","오렌지","복숭아"};
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<style>
ul {width : 130px;}
li {list-style : none; background : #ff3300;
padding : 5px; margin : 3px 0; color : #ffffff;
font-weight : bold;}
li:hover {background : #00cc00; color : #ffff00;}
</style>
</head>
<body>
과일목록<br>
<ul>
<%
for(int i=0; i<fruit_array.length; i++) {
%>
<li>
<%
fruit_array[i]
%>
</li>
<%
}
%>
</ul>
</body>
</html>
<% %>를 따로 사용하면서 li 안에 fuit_array[i]를 돌려서 배열의 값들을 출력하고,
} 도 따로 닫아주었다.
자바와 관련된 부분은 모두 스크립트로 처리되어야 한다.
table을 이용한 구구단
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%
for(int i=1; i<=9; i++) {
for(int j=2; j<=9; j++) {
System.out.println(i + " * " + j + " = " + i*j + "\t");
}
System.out.println();
}
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
table {border:2px solid black; border-collapse:collapse;}
tr {height:30px;}
td {width:110px; text-align:center;}
</style>
</head>
<!-- html 주석인데, 컴파일 시 그대로 자바코드로 전환되기 때문에 사용이 좋지 않다.
그대로 노출될 가능성이 높다 -->
<%-- JSP 주석인데, 컴파일 시 자바코드로 전환되지 않아서 사용하기 좋다. --%>
<body>
구구단
<table border="1">
<%
for(int i=1; i<=9; i++) {
%>
<tr>
<%
for(int j=2; j<=9; j++) {
%>
<td>
<%
String str = String.format("%d * %d = %d", i, j, i*j);
%>
<%=
str
%> <%-- "<%="는 변수 처리 --%>
</td>
<%
}
%>
</tr>
<%
}
%>
</table>
</body>
</html>
<!DOCTYPE html>
...
<html>
위 부분은 Consle에서 확인을 위함이고,
실제 출력 부분은 body 부분에서 실행된다.
JSP Templates(템플릿 이용, 부서 별 사원 입력 및 출력) (0) | 2022.08.19 |
---|---|
JSP (DB 연결, 부서 별 사원 입력 및 출력) (0) | 2022.08.19 |
VO(Value Object), JSP 내장 객체, (여러가지 정보를 하나로 묶어 저장할 수 있게 만든 클래스 VO) (0) | 2022.08.16 |
JSP 개념 (접속자 IP 주소 얻어오기) (0) | 2022.08.16 |
JSP (JavaServerPage) 설정 (0) | 2022.08.16 |