일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- cmd2
- python
- Couldn't read row 0
- 액션바 필요없숴
- kotlin
- 10814
- Make sure the Cursor is initialized correctly before accessing data for it.
- 쏘큩
- 페니빙
- pwnable.kr
- java.lang.IllegalStateException
- SQLiteConstraintException
- 나이순 정렬
- 포너블
- col -1 from CursorWindow
- 애너그램 그룹
- tlqkf
- Docker
- pwnable
- 클라우드가 뭐야
- 클라우드란?
- 블록체인
- 백준
- 파이썬
- 코틀린
- 6566
- pwable.kr
- Drive-By-Download
- cmd1
- UNIQUE constraint failed
- Today
- Total
푸르미르
내장객체 본문
JSP 페이지를 작성할 때, 사용할 수 있도록 JSP컨테이너에 미리 정의된 객체
JSP 페이지가 서블릿 프로그램으로 번역될 때 JSP컨테이너가 자동으로 내장 객체를 멤버 변수, 메소드 매개변수 등의 각종 참조 변수(객체)로 포함
JSP페이지에 별도의 import문 없이 자유롭게 사용 가능
스크립트릿 태그나 표현문 태그에 선언을 하거나 객체를 생성하지 않고도 직접 호출하여 사용가능
내부 객체에는 모두 9개가 있음
request
Request객체는 브라우저에서 jsp페이지로 전달되는 데이터의 묶음으로 HTTP헤더와 HTTP바디로 구성되어 있다. JSP컨테이너는 요청된 HTTP메시지를 통해 HttpServletRequest객체 타입의 request객체명으로 사용한다.
사용자가 입력 폼으로부터 특정한 값을 입력하거나 선택한 값을 jsp페이지 내에서 값을 받아와 처리하기 위해 사용할 수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"/>
</head>
<body>
<h1>Request Example1</h1>
<FORM METHOD=POST ACTION="request1.jsp">
성명 : <INPUT TYPE="text" NAME="name"><br/>
학번 : <INPUT TYPE="text" NAME="studentNum"><br/>
성별 : 남자 <INPUT TYPE="radio" NAME="sex" VALUE="man" checked>
여자 <INPUT TYPE="radio" NAME="sex" VALUE="woman"><br/>
전공 : <SELECT NAME="major">
<OPTION SELECTED VALUE="국문학과">국문학과</OPTION>
<OPTION VALUE="영문학과">영문학과</OPTION>
<OPTION VALUE="수학과">수학과</OPTION>
<OPTION VALUE="정치학과">정치학과</OPTION>
<OPTION VALUE="체육학과">체육학과</OPTION>
</SELECT><br>
<INPUT TYPE="submit" value="보내기">
</FORM>
</body>
</html>
|
cs |
request1.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<h1>Request Example1</h1>
<%@ page contentType="text/html;charset=EUC-KR"%>
<%
request.setCharacterEncoding("euc-kr");
%>
<%
String name = request.getParameter("name");
String studentNum = request.getParameter("studentNum");
String sex = request.getParameter("sex");
String major = request.getParameter("major");
if(sex.equals("man")){
sex = "남자";
}else{
sex = "여자";
}
%>
<body>
성명 : <%=name%><p>
학번 : <%=studentNum%><p>
성별 : <%=sex%><p>
학과 : <%=major%>
</body>
|
cs |
request1.jsp
response
사용자의 요청을 처리한 결과를 서버에서 웹브라우저로 전달하는 정보를 저장
서버는 응답헤더와 요청 처리 결과 데이터를 웹브라우저로 보냄.
1
2
3
4
|
<h1>Response Example1</h1>
<%
response.sendRedirect("response1_1.jsp");
%>
|
cs |
response1.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<%@ page contentType="text/html;charset=EUC-KR"%>
<%
response.setHeader("Pragma","no-cache");
if(request.getProtocol().equals("HTTP/1.1")){
response.setHeader("Cache-Control","no-cache");
}
%>
<html>
<body>
<h1>Response Example1</h1>
http://localhost/myapp/ch07/response1.jsp가<p>
http://localhost/myapp/ch07/response1_1.jsp로 변경이 되었습니다.
</body>
</html>
|
cs |
response1_1.jsp
out
Jsp페이지의 결과를 클라이언트에 전송해주는 출력 스트림을 나타내며, jsp페이지가 클라이언트에게 보내는 모든 정보는 out객체를 통해서 전달된다.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<%@ page contentType="text/html;charset=EUC-KR"
buffer="5kb"
%>
<%
int totalBuffer = out.getBufferSize();
int remainBuffer = out.getRemaining();
int useBuffer = totalBuffer - remainBuffer;
%>
<h1>Out Example1</h1>
<b>현재 페이지의 Buffer 상태</b><p>
출력 Buffer의 전체 크기 : <%=totalBuffer%>byte<p>
남은 Buffer의 크기 : <%=remainBuffer%>byte<p>
현재 Buffer의 사용량 : <%=useBuffer%>byte<p>
|
cs |
session
세션 = 클라이언트와 웹서버 간의 상태를 지속적으로 유지하는 방법
클라이언트 요청에 대한 context정보의 세션과 관련된 정보를 저장하고 관리하는 내부객체
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"/>
</head>
<body>
<h1>Session Example1</h1>
<FORM METHOD=POST ACTION="session1.jsp">
아이디 : <INPUT TYPE="text" NAME="id"><p>
비밀번호 : <INPUT TYPE="password" NAME="password"><p>
<INPUT TYPE="submit" VALUE="로그인">
</FORM>
</body>
</html>
|
cs |
session1.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
<%@ page contentType="text/html;charset=EUC-KR"
session="true"
%>
<%
request.setCharacterEncoding("euc-kr");
%>
<%
String id = request.getParameter("id");
String password = request.getParameter("password");
session.setAttribute("idKey",id);
session.setMaxInactiveInterval(60*5);
%>
<h1>Session Example1</h1>
<FORM METHOD=POST ACTION="session1_1.jsp">
1.가장 좋아하는 계절은?<br>
<INPUT TYPE="radio" NAME="season" VALUE="봄">봄
<INPUT TYPE="radio" NAME="season" VALUE="여름">여름
<INPUT TYPE="radio" NAME="season" VALUE="가을">가을
<INPUT TYPE="radio" NAME="season" VALUE="겨울">겨울<p>
2.가장 좋아하는 과일은?<br>
<INPUT TYPE="radio" NAME="fruit" VALUE="watermelon">수박
<INPUT TYPE="radio" NAME="fruit" VALUE="melon">멜론
<INPUT TYPE="radio" NAME="fruit" VALUE="apple">사과
<INPUT TYPE="radio" NAME="fruit" VALUE="orange">오렌지<p>
<INPUT TYPE="submit" VALUE="결과보기">
</FORM>
|
cs |
session1.jsp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<%@ page contentType="text/html;charset=EUC-KR"%>
<%
request.setCharacterEncoding("euc-kr");
%>
<h1>Session Example1</h1>
<%
String season = request.getParameter("season");
String fruit = request.getParameter("fruit");
String id = (String)session.getAttribute("idKey");
String sessionId = session.getId();
int intervalTime = session.getMaxInactiveInterval();
if(id != null){
%>
<b><%=id%></b>님이 좋아하시는 계절과 과일은<p>
<b><%=season%></b>과 <b><%=fruit%></b> 입니다.<p>
세션 ID : <%=sessionId%><p>
세션 유지 시간 : <%=intervalTime%>초<p>
<%
session.invalidate();
}else{
out.println("세션의 시간이 경과를 하였거나 다른 이유로 연결을 할 수가 없습니다.");
}
%>
|
cs |
session1_1.jsp
'Web Programming' 카테고리의 다른 글
Apache Tomcat 9 오류 (0) | 2021.02.02 |
---|