// Login.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<!-- 모든 세션종료 -->
<%
session.invalidate();
%>
<center>
<h3>로그인</h3>
<hr>
<form method=post action="setProduct.jsp">
<input type="text" name="txt">
<input type="submit" value="로그인">
</form>
</center>
</body>
</html>
// setProduct.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%
request.setCharacterEncoding("EUC-KR");
String name = "";
session.setAttribute("name", request.getParameter("txt")); // txt에 입력된 값을 session에 저장
if (session.getAttribute("name") == "") { // txt에 아무값도 입력되지 않았을 때
out.print("<script>alert(\"아이디가 입력되지 않았습니다. 다시 입력해주세요.\"); history.back();</script>");
} else { // 입력되엇으면 name 변수에 저장
name = (String) session.getAttribute("name");
}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<div align="center">
<h3>상품선택</h3>
<hr>
<!-- 로그인 기록 -->
<%
out.print(name);
out.print("님이 로그인 한 상태입니다.");
%>
${name};
<hr>
<!-- 드롭다운, 추가버튼 -->
<form method = post action = "add.jsp">
<!-- 드롭다운 -->
<select name = "fruit">
<option selected>한라봉</option>
<option >레몬</option>
<option >오렌지</option>
</select>
<!-- 버튼 -->
<input type = "submit" value = "추가">
</form>
<a href="checkOut.jsp">계산</a>
</div>
</body>
</html>
// add.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("EUC-KR");
%>
<!-- 리스트 선언 -->
<%
ArrayList<String> flist = (ArrayList) session.getAttribute("fruit"); // 어레이 리스트를 세션에 추가
String fruits = request.getParameter("fruit"); // 체크된 과일의 파라미터를 fruits 변수에 저장
if (flist == null) { // 리스트 처음 생성시 즉, 장바구니에 과일을 처음 담았을때
flist = new ArrayList<>(); // 새로운 리스트 객체 생성
session.setAttribute("fruit", flist);
}
flist.add(fruits);
%>
<script>
alert("<%=fruits %>이 추가되었습니다.");
history.back();
</script>
</body>
</html>
// checkOut.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<div align = "center">
<h2>계산</h2>
<br>
<a>선택한 상품 목록</a>
<br>
<b>'<%=session.getAttribute("name") %>'의 장바구니</b>
<hr>
<!-- 코드입력 -->
<%
ArrayList<String> flist = (ArrayList) session.getAttribute("fruit");
// 장바구니 리스트가 비어있을때
if (flist == null) {
out.print("<script>alert(\"장바구니가 비어있습니다. 과일을 선택해주세요.\"); history.back();</script>");
} else {
// 리스트가 비어있지 않을 시 장바구니에 있는 값 출력
for (int i = 0; i < flist.size(); i++) {
out.println(flist.get(i) + "<br>");
}
}
%>
<input type = "button" onclick = "history.back()" value = "뒤로가기">
<form method = post action = "Login.jsp">
<input type = "submit" value = "로그아웃">
</form>
<!--
<input type = "button" onclick = "location.href= 'sessionExit.jsp' "value = "로그아웃">
-->
</div>
</body>
</html>
반응형
'자바과정 > JSP' 카테고리의 다른 글
JSP 실습 Template (0) | 2021.03.10 |
---|---|
JSP 실습 application과 session (scope) (0) | 2021.03.10 |
JSP 예습겸 Scope (0) | 2021.03.08 |
JSP 오늘의 강의내용 끄적... (0) | 2021.03.08 |
JSP 구구단 (자바코드) (0) | 2021.03.08 |
댓글