336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
Login 로그인
- 웹 개발에 있어서 가장 기본적이라고 볼 수 있는 Login 기능 구현
- JSP을 기반으로 로그인을 구현한다
#로그인의 Task
- 회원 정보를 가져온다
- 일치하는 회원 정보가 있다면 세션에 넣는다
- 결과를 보고한다
우선 Member에 대해서 DAO를 생성한다
기본적인 회원정보 확인을 위한 메소드를 생성한다
# 회원 확인 메소드
회원 ID와 PW를 입력받았을 시 DB에 입력된 정보와 일치하는 회원이 있는지를 파악한다
회원 정보 확인 시 ID나 PW가 같지 않을 시 같지 않다는 Alert을 준다
이전의 웹에서는 ID가 틀리면 ID가 틀리다고 나오고 PW가 틀리다면 PW가 틀렸다고 알려준다
하지만 보안상의 문제 때문에 (PW가 틀렸다고 나오면 ID가 확인되는 상황) ID와 PW를 모두 비교 후
Alert 자체를 ID나 PW가 다르다는 알림을 준다
입력한 ID, PW와 일치하는 회원 정보 1개를 가져오기 때문에 List는 필요하지 않다
결과를 가져오는 try catch 부분에서 MemberVO를 추가한 후 결과를 IF로 확인한다 (결과값이 1개가 나오기 때문)
# 쿼리 작성
쿼리에 member로 쿼리 이름을 지정해준다 그리고 Toad를 실행 시킨다
toad의 장점 중 하나인 쿼리 자동 완성을 사용한다
Select 구문에서 FROM 절에 ARTICLE.을 지우고 마지막에 ;(세미콜론)을 지워준다
이제는 조건절을 붙여준다
MEMBER_ID 와 PASSWORD를 비교한다
그리고 DAO에서 쿼리 경로를 지정해주고 ?에 데이터를 넘겨준다
그렇게 쿼리에 맞는 사용자가 있다면 멤버 객체를 하나 만들어서 정보들을 set 시켜준다
Password까지 가져오는 것을 볼 수 있다
보안상의 문제는 세션이 있는한 문제가 되진 않지만 세션 자체가 해킹 가능성이 있다
# BIZ 생성
회원 정보를 가져왔다면 세션에 넣고 없다면 알림을 주는 기능이 정의될 것이다
MemberBiz의 기본적인 틀
로그인의 기능에 따라서 메소드 login을 정의하면 된다
1 회원 정보 가져오기
회원 정보를 DB에서 검색 후 있는 정보를 가져온다
하지만 정보가 없다면 null이 있으니 null을 걸러줘야 한다
2 일치하는 회원 정보 세션에 넣기
세션은 request가 가지고 있어서 받아와야 한다 그러므로 HttpServletRequest를 파라미터로 받아와야 한다
위와 같이 session을 가져올 수 있다 이제 session을 setAttribute 시켜줘야 하는데
request는 첫 글자를 소문자로 파라미터를 넘겼짐나
session은 표준 규칙이 있다 앞뒤로 언더바를 붙이고 영문자는 모두 대문자로 적어준다
3 결과보고
2번 Task에서 if문을 본다면 일치하는 회원 정보가 있을 시에 대한 상황이다
그렇기 때문에 결과값으로 찾기에 성공과 실패를 알려줄 때 (true/false) return을 위의 논리연산을 사용한다
이제 DoLoginServlet에 가서 MemberBiz를 추가한 후 결과를 받아낸다
위와 같이 로그인이 성공했는지에 대한 Boolean 변수 선언하여 성공 시 임의의 게시판 리스트 (/list)로 보내고
아닌 경우 login에 errorCode=1을 파라미터로 보냈다
'[ Developer ] > Web - Servlet JSP' 카테고리의 다른 글
[JSP Web] Cookie 쿠키 이용하기 (0) | 2016.06.03 |
---|---|
[JSP Web] 게시판 목록 페이징 Board Paging (0) | 2016.06.02 |
[JSP Web] 게시글 수정 Update 구현하기 (0) | 2016.06.01 |
[JSP WEB] 글 작성 페이지 만들기 Write Page (0) | 2016.05.31 |
[JSP Web] 게시판 리스트 페이지 List Page (0) | 2016.05.31 |