JSP(내장객체)

최동민·2022년 6월 13일
0

JSP

목록 보기
3/10
post-custom-banner

내장객체

객체화 없이 사용할 수 있는 객체이며, JSP파일이 서블릿으로 변환될 때 웹 컨테이너가 자동으로 메모리에 할당하며 제공한다.

우리가 new로 생성자를 호출하지 않아도 이미 WAS라는 친구가 메모리를 할당해주면서 자동으로 얘네들까지 할당을 해준다. 그래서 우리는 사용만 하면 된다. 직접 객체화를 할 필요가 없다. 이미 내장되어 있기 때문에 객체명도 정해져있다. 그걸 통해서 어떤 것들을 해낼 수 있는지를 배워보자.

request
: 웹 브라우저의 요청 정보를 저장

response
: 웹 브라우저의 요청에 대한 응답 정보를 저장

out
: JSP 페이지 body에 출력할 내용 작성 시 사용

session
: 하나의 웹 브라우저의 정보를 유지하기 위한 세션 정보를 저장

pageContext
: JSP 페이지에 대한 정보를 저장. 현재 페이지가 어디에서 작업 중인지 그 경로를 나타내는 데에 많이 쓰인다.

exception
: JSP 페이지에 예외가 발생한 경우 사용되는 객체


예제를 통해 알아보자. js이용. on : 클릭시 이벤트가 발생
send()라는 함수 이용
name과 birthday에 값 입력이 없으면 css와 placeholder를 띄운다.
박스를 다시 클릭하면 지워진다. -> removeAttr 사용

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>내장 객체 예제</title>
</head>
<body>
	<form action="object_ok.jsp" name="join">
		<fieldset>
			<legend>개인 정보</legend>
			<input type="text" name="name">
			<input type="date" name="birthday">
			<input type="button" value="확인" onclick="send()">
		</fieldset>
	</form>
</body>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
	$("input[name='name']").on("click", function(){
		$(this).removeAttr("style");
		$(this).removeAttr("placeholder");
	});
	
	$("input[name='birthday']").on("click", function(){
		$(this).removeAttr("style");
	});
	
	function send(){
		var frm = document.join;
		if(!frm.name.value){
			$("input[name='name']").css("border-color", 'red');
			$("input[name='name']").attr("placeholder", '성함을 입력하세요');
			return;
		}
		
		if(!frm.birthday.value){
			$("input[name='birthday']").css("border-color", 'red');
			return;
		}
		frm.submit();
	}
	
	
	
</script>
</html>

request 내장객체 이용

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%request.setCharacterEncoding("UTF-8"); %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>내장 객체 request 예제</title>
</head>
<body>
	<table border="1">
		<tr>
			<th>이름</th>
			<th>생일</th>
		</tr>
		<tr>
			<td><%=request.getParameter("name")%></td>
			<td><%=request.getParameter("birthday") %></td>
		</tr>
	</table>
</body>
</html>

request.getParameter("name")
request.getParameter("birthday")
사용자한테 요청받은 데이터들. 그 사람이 요청하기 전에 입력한 데이터들을 input 태그의 name의 value와 동일하게 써주면 통째로가 사용자가 입력한 이름값 생일값이 되는 것

내장 객체 예제 개인 정보 내장 객체 request 예제
이름 생일
<%=request.getParameter("name")%> <%=request.getParameter("birthday") %>
profile
코드를 두드리면 문이 열린다
post-custom-banner

0개의 댓글