본문 바로가기
개발자로 가는 길(국비지원과정)/4.Spring+ Ajax

[210708목] 로그인 상태 유지 httpsession

by 레아Leah 2021. 7. 8.
반응형

어제에 이어 수업

매퍼에서부터 이셉션을 처리할 수 있도록함 

쇼핑몰 같이 거래가 들어가는 곳에서는 트랜잭션에서 오류가 나면 안된다. 

 

DB와 연결하는 세션 

조인을 통해 

 

이후 뭐리가 존재해야한다.

하면 레파지토리로 전달이 된다.

return result된 값이 controller로 전달됨

 

가입이 잘되었다는 표시 

 

수정

 

로그인을 하고 싶어서 로그인 화면 요청 

로그인을 하기위해 화면을 달라고 요청 

 

 

 

위치값 인식 

 

 

[2교시]

오류가 나면 이게 설정되어있는지 확인해보기 

 

sql 세션을 인식하지 못할 경우,

이게 있다는 것을 인식시켜야 한다.

위와 같이 인식시켜야 한다. 

 

 

loginform

더보기

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>로그인 화면</title>
<script src="./resources/script/memberValidation.js"></script>
</head>
<body>
<div class="wrapper">
<h2>[ 로그인 ]</h2>
<form action="login" method="POST">
<table border="1">
<tr>
<th>아이디</th>
<td>
<input type="text" id="userid" name="userid" placeholder="3~5자리의 ID 입력">
<input type="checkbox">아이디 저장
</td>
</tr>
<tr>
<th>비밀번호</th>
<td>
<input type="password" id="userpwd" name="userpwd">
</td>
</tr>
<tr>
<th colspan="2">
<input type="submit" value="로그인" onclick="return loginCheck();">
<input type="button" value="취소"> <!-- 인덱스로 이동하기 위한 버튼 -->
</th>
</tr>
</table>
</form>
</div>
</body>
</html>

 

 

 

 

함수 인식을 못해서 일단 함수 다시 가져오기 경로는 일단 삭제 

 

 

실제로 로그인 처리 

데이터가 날아올 것이기 때문에 Member member

★로그인 상태를 유지하는 것이 가장 중요하다!! 

 

이제 레파지토리로 정보를 넘길 것임

repository.login은 아직 login이 안만들어진 상태 

 

 

아래부분을 수정해야 오류가 나지 않음 

구동해보기 

값이 제대로 들아가면 값이 나오고 잘못들어갔으면 nill이 나온다

 

로그인 정보를 가지고 컨트롤러로 고 

 

 

세션을 유지할 것이냐 아니냐 

 

어느시점에 리다이렉트할 것인지 포워딩을 할것인지가 중요하다

 

 

로그인시 데이터가 있다는 것을 유지해야한다.

httprequestsession 클래스르 사용 : 웹에서 이 사람의 정보가 유지되도록 하는 것(자바 제공) 

 

웹 브라우저 구동시 서버쪽 메모리 저장, 세션 정보를 유지 

 

sqlsession

httpsession  

 

브라우저가 닫힌 상태가 아니라면 유지됨

 

어떤 경우? null이 아닐 경우! 

 

[3교시]

 

처음에는 아무것도 정보가 없어야 하기 때문에 String message =""

 

메세지가 너무 자세할 필요가 없다. 

로그인을 할 수 있으면 세션 

마치 Map처럼 키와 값으로 값을 널어둠 

리다이렉트를 이용해 첫화면으로 gogo! 

 

index로 고고 

 

로그인한 사람

로그인을 안한 사람 

로그인과 관계없이 보이는 정보

세가지로 나눔 

 

세션정보가 널인지 확인해야함 

sessionScope.loginId 

 

일단 여기까지 

로그인을 못했을 경우 처리하는 방법 

 

 

모델이 필요하다 

<모델과 httpsession의 차이>

모델  포워딩할 때 딱 한 번 일회용으로 사용, 이후 화면이 전환되면  데이터가 사라짐

httpsession : 브라우저 창을 닫지 않는 이상 유지된다. 

세션에다가 저장하지 않는 것이 좋다. 브라우저를 끄지 않으면 위험 하기 때문에  model을 많이 사용한다. 

 

model은 set이 아니라 addAttribute 

 

message는 일종의 오류 메세지 

 

로그인이 잘 되면 첫화면으로  

 

잘안되면 오류 메시지

 

로그아웃 

 

로그아웃 리퀘스트 정보 

 

 

이어서 

get 방식으로 list

 

게시판에서 할 수 있는 작업 

반응형