Day068~077

RISK_TAKER·2023년 5월 8일
0

Day068

결제 기능 구현중

토스페이 api사용, 모의 결제 테스트 기능

Day069

결제 기능

결제 정보 > 데이터베이스에 입력 확인

로그인 세션기능 관련

  • Cookie
  1. 쿠키에 id를 저장하는 방법

  2. 문제점
    누구든 열어서 확인할 수 있다는 게 단점
    개발자 도구를 열어서 값을 변경할 수 있다는 문제점이 있다.

  3. JSESSIONID에 세션에서 저장한 값이 들어있다.

	//쿠키에 id값을 저장하는 과정
    Cookie cookie = new Cookie("userId", id);
		//Key, Value
		response.addCookie(cookie); //userId가 담긴 쿠키를 response에 추가
		response.sendRedirect("login_status.jsp"); response에 이동할 페이지 정보
		
		response.sendRedirect("login_status.jsp?userId="+id);
        
	//쿠키에서 id값을 가져오는 과정
    Cookie[] cookies = request.getCookies();
		String userId = null;
		for(int i=0; i<cookies.length; i++) {
			if(cookies[i].getName().equals("userId")) {
				userId = cookies[i].getValue();
				break;
			}
		}
  • Session
  1. 다른 사람이 보거나 변경할 수 없다는 장점이 있다.

  2. 세션에 값을 저장해 두면 페이지간 이동을 해도 세션이 유지가 되어 로그인한 아이디를 언제든 불러 올 수 있다.

	//세션에 값을 저장하는 과정
    session.setAttribute("userId", id); //서버에 저장이 된다.
	response.sendRedirect("login_status.jsp");
    
    //세션에서 값을 가져오는 과정
    String userId = (String)session.getAttribute("userId"); //return type "Object" 형변환 필요
    
    //세션을 종료하는 과정
    session.invalidate(); //현재 존재하는 세션을 비활성화.		
	response.sendRedirect("login_status.jsp");

Day070

  • 결제 기능 DB 테이블 수정
    현재의 구매번호를 기본키를 설정할 경우 기본키가 적은 확률로 중복되는 문제가 발생할 가능성이 있기 때문에 기본키를(결제번호, 구매번호)로 구성

  • 예약 페이지 수정

  1. 시작일과 종료일을 선택하는 부분에서 달력을 사용.
  2. jQuery의 datepicker를 선택.
  3. 오늘 이전의 날짜는 선택할 수 없도록 변경

Day071

  • 날씨 API 자료 조사
  • 예약 및 결제 페이지 알림창 수정

Day072

Day073

  • 결제 내역 확인 페이지 생성
  • 예약 기능 - 날짜 중복 체크 기능 완료(PL/SQL문 생성)

Day074

  • 예약 기능 : 날짜 선택에 따른 가격 변경 기능 추가
  • 예약 및 결제 테이블의 변경으로 인한 소스 코드 수정

Day075

  • 예약 기능 부분 쿼리문 수정
  • 결제 취소 기능 추가
  • 예약 및 결제 페이지에 헤더 및 푸터 추가

Day076

  • 비로그인 상태에서 예약 수행할 경우 알림창을 출력하고 로그인 페이지로 이동하도록 수정
  • 회원가입 완료 후 성공/실패에 따라 알림창이 출력되도록 수정

Day077

  • 지도 API에 marker 표시 기능 추가
  • 프로젝트 발표

0개의 댓글