개발 일지/JSP, Sevlet

MySite 코드 한 줄 한 줄 해석 2. writeform.jsp

박빙수_ 2024. 1. 24. 19:20

1.

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>: 이 줄은 JSTL(JavaServer Pages Standard Tag Library) 코어 라이브러리를 페이지에 포함시키는 지시어입니다. prefix="c"는 이 라이브러리의 태그를 사용할 때 c 접두사를 사용하겠다는 것을 의미합니다.

 

2.

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link href="/mysite/assets/css/board.css" rel="stylesheet" type="text/css">
<title>Mysite</title>
</head>

<link href="/mysite/assets/css/board.css" rel="stylesheet" type="text/css">: 외부 CSS 파일(/mysite/assets/css/board.css)을 링크하여 페이지 스타일을 정의합니다.

 

3.

<body>
 <div id="container">
	<c:import url="/WEB-INF/views/includes/header.jsp"></c:import>
	<c:import url="/WEB-INF/views/includes/navigation.jsp"></c:import>

<c:import url="/WEB-INF/views/includes/header.jsp"></c:import>: JSP의 c:import 태그를 사용해 서버의 특정 경로(/WEB-INF/views/includes/header.jsp)에 위치한 JSP 파일을 현재 페이지에 포함시킵니다. 이는 페이지의 헤더 부분입니다.

 

4.

<div id="content">
 <div id="board">
 <form class="board-form" method="post" action="/mysite/fileUpload" enctype="multipart/form-data">

게시글과 파일을 업로드하기 위한 폼입니다.

method="post"는 폼 데이터를 서버로 전송하는 방식을 POST로 지정합니다.

action="/mysite/fileUpload"는 폼 데이터를 처리할 서버의 URL을 지정합니다.

enctype="multipart/form-data"는 폼에 파일 업로드가 포함될 때 필요한 인코딩 타입입니다.

 

5.

<input type ="hidden" name = "a" value="write">
 <table class="tbl-ex">
	<tr>
	 <th colspan="2">글쓰기</th>
	</tr>
	<tr>
	 <td class="label">제목</td>
	 <td><input type="text" name="title" value=""></td>
	</tr>
	<tr>
	 <td class="label">내용</td>
	 <td>
	 <textarea id="content" name="content"></textarea>
	 </td>
	</tr>
	<tr>

<input type ="hidden" name = "a" value="write">: 이것은 숨겨진 입력 필드로, 사용자에게 보이지 않는 정보를 포함합니다. name="a"value="write"는 폼이 제출될 때 서버로 전송되는 데이터를 정의합니다. 이 경우, a=write라는 정보가 서버로 전송되어 서버가 이 폼이 게시글 작성을 위한 것임을 알 수 있습니다.

(어떤 데이터를 숨기는 것인지 확인 필요)

 

6.

 <tr>
  <td>
   File to upload: <input type="file" name="filename"><br/>
  </td>
 </tr>
</table>

 <div class="bottom">
  <a href="/mysite/board">취소</a>
  <input type="submit" value="등록">
 </div>
</form>				
</div>

<td>File to upload: <input type="file" name="filename"><br/></td>: 파일 업로드를 위한 입력 필드를 포함하는 테이블 데이터 셀입니다. type="file" 속성을 가진 <input> 요소는 사용자가 파일을 선택할 수 있게 해줍니다. name="filename"은 서버로 전송될 때 사용되는 필드의 이름입니다.

 

7.

</div>
 <c:import url="/WEB-INF/views/includes/footer.jsp"></c:import>
</div><!-- /container -->
</body>
</html>

 

<c:import url="/WEB-INF/views/includes/footer.jsp"></c:import>: 이 코드는 JSP의 c:import 태그를 사용하여 외부 JSP 파일(/WEB-INF/views/includes/footer.jsp)을 현재 페이지에 포함시킵니다. 이 파일은 아마도 페이지의 공통 푸터를 포함하고 있을 것입니다.