- 프로젝트 내에서 webapp이 루트 경로이다.
- 현업에서는 버전에 따라 webapp폴더가 아닌 경우도 있으니 주의.
서버에 여러가지 프로젝트를 add하게 되면
server.xml에 context에 등록이 됨.
<Context docBase="08_session_application" path="/08_session_application" reloadable="true" source="org.eclipse.jst.jee.server:08_session_application"/></Host>
여기서 path="/08_session_application" = 각 프로젝트에 접근하기 위한 path. 얼마든지 수정 가능. 중복이 되면 안됨.
path 수정하려면 서버 중지하고 변경.
- 서버 더블클릭하고 Modules에서 쉽게 수정이 가능하다.
- path 수정 시 경로 앞에 / 넣기
- path = "/" 인 경우 ROOT 프로젝트로 설정되어 프로젝트경로입력없이 진입했을때 처음 나오는 프로젝트가 됨.
서버 구동 후 tomcat 파일 탐색기로 들어가면
webapps => 정적 파일(html, css, image ...)
work => 동적파일 (jsp,servlet, VO 등 ...)
이 저장된다.
<form 태그 >
GET, POST
GET = > 검색에 사용
POST => 정보 변경작업에 사용 (검증된 data)
- enctype - 전송되는 데이터의 인코딩 설정
- (get 방식은 전송시 기본적으로 encoding이 되어벌임....!)
application/x-www-form-urlencoded
- 기본값 : 전송되는 모든 문자들은 서버로 보내기 전에 인코딩 됨을 명시
%16진법의 두자리 수 - 하나당 1byte - 한글은 3byte로 조합
%EA%B9%80%EC%84%9C%EC%98%81 - 김서영
multipart/form-data
전달되는 데이터가 이진 데이터 이므로 모든 문자를 인코딩 하지 않음을 명시
이 방식은 문자가 아닌 데이터(파일,이미지)등을 서버에 전송할 때 사용
text/plain
일반 문자 - 공백은 + 기호로 변환하지만
나머지 문자는 인코딩 되지 않음을 명시
ex)
<form action="joinCheck.jsp" method="POST">
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="common/header.jsp" %>
<h1>MAIN PAGE</h1>
<p>
<!-- lorem*5 ctrl+e -->
<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Tenetur porro qui neque saepe ratione officia provident itaque deserunt perspiciatis iste. Repellat quod quis porro laboriosam debitis est perspiciatis non harum?</div>
<div>Repellat atque fugiat eveniet doloremque culpa est consequuntur et. Voluptatum dolores earum accusamus iure ut placeat similique dolor laboriosam sint ullam illum temporibus expedita perferendis maiores repellendus eveniet optio asperiores!</div>
<div>Nobis ad iste accusantium nostrum hic eveniet rem nemo eius maiores esse exercitationem at dolorum doloribus laboriosam odio eum consequuntur earum atque pariatur totam. Facilis voluptates dolorum eveniet ratione et.</div>
<div>Iste saepe recusandae non hic dolores autem obcaecati architecto quibusdam porro suscipit sunt beatae temporibus debitis consectetur quos ex deserunt quam sapiente aliquam perspiciatis. Minus ea modi eaque deleniti! Distinctio!</div>
<div>Inventore fugiat non culpa numquam voluptatum soluta corrupti ex vel quas eveniet. Quo modi eius qui blanditiis dolorum nihil sapiente reprehenderit reiciendis sint fugiat debitis ullam officia delectus quaerat rem?</div>
<p>
<%@ include file="common/tail.jsp" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<footer>
<hr/>
Copyright © Choi 1982. All rights reserved.
<address>부산 수영구 광안동 xxx</address>
</footer>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%!
// 선언문 - class block 영역
// 선언된 변수는 field, method 선언도 가능
String contextPath;
%>
<% // 스클립틀릿은 실제로 service 메소드를 통해 실행됨. 내장객체사용가능.
contextPath = request.getContextPath();
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Scope Project</title>
</head>
<body>
<header>
<a href="<%=contextPath%>">MAIN PAGE</a> | // %= : 표현문. 연산된 결과를 이용할 수 있다.
<a href="#">Log Out</a> |
<a href="join.jsp">JOIN PAGE</a> |
<a href="#">LOGIN PAGE</a>
<hr/>
</header>
상대 경로 작성 시 url 요청경로에서 찾아 들어가는 것임. (파일 기준이 아님 주의!)
<a href="<%=contextPath %>/join.jsp">JOIN PAGE</a> |
이렇게 절대경로로 사용하는게 더 쉽다! (webapp기준)
jsp 스크립트 태그 참고자료.
디렉티브 태그를 이용하여 시멘틱 태그를 연결한다. (공통 header, footer 작성.)

<!-- 4대 영역 객체 - 속성객체
pageContext - 하나의 jsp page 정보 (하나의 서블릿클래스가 요청을 받아들일때마다 생성)
request - 하나의 요청 응답 완료
session - 한 사용자의 브라우저 사용 완료
application - 서버 사용 완료
-->
'Java > JSP' 카테고리의 다른 글
7.04 dto,vo / useBean (0) | 2023.07.04 |
---|---|
7.03 리스트를 이용한 회원가입 구현 (0) | 2023.07.03 |
javascript, 자주 쓰이는 location, history, 스크롤이벤트 (0) | 2023.06.27 |
06.23 eclipse for JSP set up (0) | 2023.06.26 |
06.26 이클립스 emmet 확장 프로그램 설치 (0) | 2023.06.26 |