블로그 이미지
기대주
초초초초보 개발자.. 프로그래머도 아니고..엔지니어도 아니고.. 은땡때문에살지요^^

calendar

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

Notice

'A&J프로젝트'에 해당되는 글 12

  1. 2007.07.02 쿠키 테스트 예제1
2007. 7. 2. 19:41 A&J프로젝트


cartList 목록에서 값을 선택하면 a.jsp 로 이동한다.
a.jsp는 목록에서 찍은 아이디를 찍어준다.
중복처리하여 한번 찍었던 아이디는 보여주지 않는다.

=========================a.jsp=======================================
<%@ page contentType="text/html; charset=euc-kr" %>
<%@ page session="false" %>
<%@ page import="java.util.*" %>

<%
 Cookie noCookie = null;
 
 request.setCharacterEncoding("euc-kr");
 
 String bckt_seq = request.getParameter("bckt_seq");
//목록에서 찍은 아이디값
 String bckt_seqs = null;
//쿠키로 저장한 값
 System.out.println(bckt_seq);
 System.out.println(bckt_seqs);
 if(bckt_seq == null){
  bckt_seq = "UnKnown";
 }
 Cookie[] cookies = request.getCookies();
 System.out.println("111111111"+cookies);
 if(cookies != null){
  for(int i = 0; i < cookies.length; i++){
   if(cookies[i].getName().equals("myNo")){
    noCookie = cookies[i];
    break;
   }
  } 
 }

 if (noCookie == null){
 System.out.println("noCookie ="+noCookie);
 
  noCookie = new Cookie("myNo", java.net.URLEncoder.encode(bckt_seq));
//아이디를 myNo라는 이름으로 쿠키에 넣는다.
 
 } else {
 System.out.println("noCookie.getValue() ="+noCookie.getValue());
  bckt_seqs = noCookie.getValue();          //쿠키에 값들을 넣는다.
  boolean success = true;                       //true일때 출력한다.디폴트 true
  if(bckt_seqs == null) bckt_seqs = "";       //처음선택할땐 저장된 쿠키가 없기때문에 ""를 찍는다.
  else {
  // | 를 구분자로 데이터를 자른다.
   StringTokenizer st = new StringTokenizer(bckt_seqs,"|");
   
   while(st.hasMoreTokens()){                  //구분자가 있다면(?) 잘모르겠다..뜻을
    String a = st.nextToken();                      //구분자로 데이터를 자르고 a에 담는다.
    if(a.equals(bckt_seq)){                        //a의 값중에 지금선택한 bckt_seq가 있다면
     success = false;                                //false
    }
   }
  }
  System.out.println("bckt_seqs = "+bckt_seqs+",bckt_seq = "+bckt_seq);
 
  if (success) noCookie.setValue(bckt_seqs + "|" + bckt_seq);
 }
 //success가 true라면 bckt_seqs값에 bckt_seq를 구분자와 함께 저장한다.
 response.addCookie(noCookie);
 
 
%>
<html>
<body>
클릭한것 리스트<br>
myNo : <%=noCookie.getValue()%>      //저장한 쿠키값을 찍어준다.
<p><a href="/tmall/cart.tmall">목록으로</a>
</body>
</html>

posted by 기대주