today_is
[ jsp ] 로그인 세션 본문
오늘의 목표
세션의 특성에 대해서 파악하고, 로그인후에 세션 만료시간을 적용해보자.
session
: 세션에 데이터를 저장 가능함
이러한 특성을 이용하여 로그인 지속 기능을 부여할 수 있다
session vs cookie
: 세션은 브라우저를 종료할때까지 데이터가 유지된다
쿠키는 세션과 다르게, 브라우저 정리와는 별개로 생존기간동안 데이터가 사라지지 않음
GET
: 주소창을 통해서 전달하기 때문에 인코딩을 별도로 설정하지 않아도 글자깨짐 현상이 없다
POST
: 주소창을 통하지 않아서, 별도의 인코딩 형식을 지정해야 글자를 정상적으로 받을 수 있다
파라미터는 request객체에 담겨서 넘어오기 때문에, request의 인코딩규칙을 지정한 후 파라미터를 꺼내기 !
ex01-form.jsp
form에서 문자열 입력값을 보여주고 싶지 않으면 input의 type="password" 를 사용하자
form에서 method는 GET가 기본값
GET은 전송이 빠르고 직관적이다. 대신 파라미터가 주소창에 노출된다
용량이 많거나, 주소창에 노출시키고 싶지 않거나, 문자열로 표현불가능한 값은 POST로 전달
POST는 입력값을 쿼리스트링으로 전달하지 않는다
POST는 GET에 비해 처리속도가 다소 느리지만, 더 많은 데이터를 전송하는데 사용
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ex01-form.jsp</title>
</head>
<body>
<h1>ex01-form</h1>
<hr>
<legend>POST</legend>
<form action="ex01-action.jsp" method="POST">
<p><input type="text" name="userid" placeholder="ID" required autofocus></p>
<p><input type="password" name="userpw" placeholder="Password" required></p>
<p><input type="submit" value="로그인"></p>
</form>
</body>
</html>