파일명 : cookieTest.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String name = "쿠키값없음";
// 쿠키값 가져오기
// 해당 사이트에 첫번째 방문이면 쿠키값을 받지 않았으므로
// 이때 getCookies() 반환값은 null이 됨
Cookie[] cookies = request.getCookies();
if (cookies != null) {
// for (int i=0; i<cookies.length; i++) {
// if (cookies[i].getName().equals("name")) {
// name = cookies[i].getValue();
// }
// }
for (Cookie cookie : cookies) {
if (cookie.getName().equals("name")) {
name = cookie.getValue();
}
}
}
%>
<h1>cookieTest.jsp 페이지</h1>
<h3><%=name %></h3>
<input type="button" value="쿠키값저장" onclick="location.href='cookieSet.jsp'">
<input type="button" value="쿠키값삭제" onclick="location.href='cookieDel.jsp'">
</body>
</html>
파일명 : cookieSet.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
// 쿠키생성
Cookie cookie = new Cookie("name", "CookieValue");
Cookie cookie2 = new Cookie("name2", "CookieValue2");
// 쿠키 시간설정(유통기한 설정) 초단위
cookie.setMaxAge(60*10); // 초단위. 60초*10=10분
cookie2.setMaxAge(60*5); // 5분
// 클라이언트에게 보내기
response.addCookie(cookie);
response.addCookie(cookie2);
%>
<script>
alert('쿠키값 생성');
location.href = 'cookieTest.jsp';
</script>
</body>
</html>
파일명 : cookieDel.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
// 쿠키값 가져오기
Cookie[] cookies = request.getCookies();
// 쿠키값 삭제
// 삭제할 쿠키의 유효기간을 0으로 설정 후
// 다시 클라이언트(브라우저)에 보냄
if (cookies != null) {
for (Cookie cookie : cookies) {
if (cookie.getName().equals("name")) {
cookie.setMaxAge(0);
response.addCookie(cookie);
}
}
}
%>
<script>
alert('쿠키값 삭제');
location.href = 'cookieTest.jsp';
</script>
</body>
</html>
파일명 : cookieForm.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String lang = "korean";
// 쿠키값 가져오기 "lang"
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if (cookie.getName().equals("lang")) {
lang = cookie.getValue();
}
}
}
%>
<h1>cookieForm.jsp 페이지</h1>
<hr>
<%
if (lang.equals("korean")) {
%>
<h2>안녕하세요. 이것은 쿠키 예제입니다.</h2>
<%
} else if (lang.equals("english")) {
%>
<h2>Hello. This is a Cookie Example.</h2>
<%
}
%>
<form action="cookiePro.jsp" method="post">
<input type="radio" name="language" value="korean"
<% if (lang.equals("korean")) { %>checked<% } %>>한국어 페이지보기
<input type="radio" name="language" value="english"
<% if (lang.equals("english")) { %>checked<% } %>>영어 페이지보기
<br>
<input type="submit" value="언어설정">
</form>
</body>
</html>
파일명 : cookiePro.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
// "language" 파라미터 값 가져오기
String lang = request.getParameter("language");
// 쿠키값 생성 "language" 파라미터에서 가져온 값
Cookie cookie = new Cookie("lang", lang);
// 유효시간 설정 (쿠키 유통기한)
cookie.setMaxAge(60*60*24); // 하루 24시간
// 클라이언트로 보내기(저장)
response.addCookie(cookie);
%>
<script>
alert('쿠키값 생성');
location.href = 'cookieForm.jsp';
</script>
</body>
</html>
'IT > Jsp' 카테고리의 다른 글
jsp - 오라클 JDBC 연동테스트 (0) | 2018.09.14 |
---|---|
jsp - session 저장, 삭제, 초기화 (0) | 2018.09.13 |
jsp - scope (page, request, session, application) (0) | 2018.09.12 |
jsp - request, response (0) | 2018.09.11 |
jsp - form값 post로 submit전송 (text, radio, select, checkbox), value값이 여러개일 때 getParameterValues (0) | 2018.09.11 |