이글은 기본적으로 이클립스와 데이터베이스의 기본지식을 가지고 있다고 가정하고 작성 합니다.
우선 dynamicwebProject로 프로젝트를 하나 만들고 꼭 web.xml을 생성해줍니다.
이런형태로 파일을 만들어주세요
lib안에 있는 파일은
https://drive.google.com/file/d/1Odd-N6ADIqQeaC3MU8BlOiaLMV3mrFaw/view?usp=sharing
jar파일 모음.zip
drive.google.com
여기 가서 받아서 넣으시면 됩니다.
context.xml입니다. 이름으로 여기를 web.xml에서 찾아오고 auth와 type을 참고하여 찾아오게 됩니다.그리고 나머지는 찾와서 활용하게되는 데이터들입니다. 즉 여기는 우리가 connection을 만드는 데 필요한 자원 즉 데이터가 저장 되어있습니다.
여기 서 resource-ref윗부분은 자동으로 생성 된것입니다. 여기서 description은 설명 name type auth를 참고해서 context.xml 에서 자원 즉 데이터를 찾아 옵니다.
저는 간단하게 아이디와 비밀번호만 넣어서 만들었습니다. 다른 이메일 같은건 그냥 컬럼을 추가 해주면 가능합니다.
실제로 해볼때는 여러가지 넣어서 해보시고 각 각 요소마다 어떤 제약조건 넣을지 생각해보시면 좋을 것입니다.
우선 로그인 페이지 jsp입니다. 저는 js를 이용해서 유효성 검사를 해주지 않았습니다. 만약 하고 싶으시다면 form에 name넣어서 사용하시면 가능합니다.
간단하게 버튼 3개 input두개로 만들었습니다.
회원가입도 로그인과 비슷하지만 버튼부분과 form부분 action 을 수정해서 이동하는 위치를 변경해주었습니다.
회원가입 정보를 담을 클래스인 VO 를 만들고 getter setter를 생성 해주었습니다.
Connection풀을 사용해서 매번 새로만드는 것이아니라 만들어놓고 자동으로 관리해주는 것을 함수로 만들어서 편리하게 했습니다. lib에서 넣은 commons붙은것은 이것을 위해 넣은 것입니다. ojdbc는 데이터베이스 연동을 위해 넣은것이고 어떻게 보면 이것을 위한것이라고 할수 있습니다.jstl은 쓸지 안쓸지 몰라서 일단 넣어놨습니다.
이렇게 DAO를 이용해서 데이터베이스에 접근해서 처리하는 것을 함수로 만들었습니다.
또한 DAO를 싱글톤으로 해서 사용할때마다 새로운 객체를 만들어서 갈비지컬렉션을 줄이도록 했습니다.
로그인 경우 상황마다 리턴값을 달리해서 어떤 문제가 있어서 로그인이 안됬는지 알수 있게 하엿고
회원 가입은 로그인 함수를 이용해서 유효성 검증을 하고 아이디가 중복이면 알리도록 했습니다.
useBean을 이용해서 넘어오는 파라미터를 자동으로 VO에 담아서 info라는 변수에 저장했고 if문을 활용하여 반환값에 따른 다른 반응으로 유효성 검증을 할수 있도록 했습니다.
똑같이 useBean을 활요했고 비밀번호 틀렸을때 아이디가 틀려서 비밀번호를 체크하지 못했을때를 두가지 상황을 모두 알려주도록 했습니다. 또한 로그인하고는 세션에 id를 등록해서 로그인했는지 알수 있게 하였고 mypage로 이동하게 했습니다.
'JSP' 카테고리의 다른 글
JSP 게시판 수정 삭제 상세 (0) | 2022.07.13 |
---|---|
JSP게시판 작성 및 생성 (0) | 2022.07.01 |
JSP 마이페이지 로그아웃 수정 삭제 (0) | 2022.06.29 |
jsp 핵심 요약 (0) | 2022.06.27 |