Eggs Sunny Side Up
본문 바로가기
Web/JSP_Servlet

JSP 객체_html코드 안에서 Java코드 사용

by guswn100059 2023. 4. 18.
<%@page import="java.util.Random"%>
<%@ 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>

<!-- JSP는 HTML 코드 안에서 JAVA코드를 사용할 수 있다. -->
<%
   // 스크립트릿
   // JSP파일 내에서 JAVA 코드를 사용하기 위한 공간
   // JSP --> Servlet --> class --> HTML
   int a = 10;
%>
   
   <!-- 표현식 : 지정한 자바 변수 또는 식을 HTML코드 사이에 출력 
   -->
   <p><%=a %></p> <!-- <p>10</p> -->
   <p>p태그-<%=a %></p> <!-- <p>p태그-10</p> -->
   <p class="<%=a %>">a</p>

   <a>페이지 이동</a>

   <!-- 선언문 -->
   <%!
      
      // 필드(전역변수)나 메소드를 선언할 때 사용
   
      public int sum(int a,int b){
      
         return a+b;
   }
   
   
   
   %>

   <%-- 
      지시자 : jsp 페이지를 실행시키기 위해 필요한 정보들을 기술
      
      <%@ 지시자이름 속성 = "속성값" %>
      - page : jsp 페이지를 실행시키기 위해 필요한 정보들을 기술
      - include : 다른 jsp 페이지를 삽입할 때
         <%@ include file="jsp파일이름" %>
         <jsp:include> --> react.js
      - taglib : 커스텀 태그 라이브러리를 사용하기 위한 지시자
         if( 조건식) {
         실행 문장
      }
      
      ==> <c:if test="조건식">
            HTML
         </c:if>
      
    --%>
    
   <%@
   
    %>

</body>
</html>

예제) 아래 화면 출력해보기

<%@page import="java.io.PrintWriter"%>
<%@ 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>

	<table border="1px solid black">
		<tr>
			<%
			for (int i = 1; i < 11; i++) {
			%>
			<td>
				<%=i %>
			</td>
			<%
			}
			%>
		</tr>
	</table>
	
	<table border="1px">
		<tr>
			<%
			// JSP 내장객체 : Servlet으로 변환될 때 자동으로 선언
			// out, response
			// pageContext, request, session, application
			
				PrintWriter out1 = response.getWriter();
			
				for(int i = 1; i < 11; i++) {
					out.print("<td>"+i+"</td>");
				}
			%>
		</tr>
	</table>
</body>
</html>

예제) 아래 화면 출력해보

html

=> form의 action 주소는 jsp를 실행했을 때 나오는 주소를 작성해주면 된다.

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="Ex03Request.jsp">
		DATA : <input type="text" name="data">
		
		<input type="submit" value="전송">
	
	</form>
</body>
</html>

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 data = request.getParameter("data");
	%>
	
	<h1>입력받은 데이터는 "<%=data %>" 입니다.</h1>

</body>
</html>

예제) 아래 화면 출력해보기

html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form action="Ex10maketable.jsp">
		층 <input type="number" name="num1">
		방 <input type="number" name="num2">
		
		<button type="submit">완료</button>
	</form>
</body>
</html>

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>
	<%
		int num1 = Integer.parseInt(request.getParameter("num1"));
		int num2 = Integer.parseInt(request.getParameter("num2"));
		
	%>
	
	<table border="1px">
		<%for(int i = 0; i < num1; i++) { %>
			<tr>
			<%for(int j = 0; j< num2; j++) {%>
				<td><%=j %></td>
			<%} %>
			</tr>
		<%} %>
	
	</table>
</body>
</html>

'Web > JSP_Servlet' 카테고리의 다른 글

쿠키  (0) 2023.04.18
forward & redirect  (0) 2023.04.18
MVC(Eclipse)+ORACLE DB 연결(환경설정)  (0) 2023.04.11
MVC 기초_총합 구하기  (0) 2023.04.11
MVC를 위한 Dynamic web project 생성  (0) 2023.04.10

댓글