상세 컨텐츠

본문 제목

JSP_로그인(longin)_수정, 삭제, 조회. 리스트, 메인

JSP_

by 쫑메이 2020. 7. 9. 00:06

본문

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

JSP에서 로그인(longin) 해서

수정, 삭제, 조회. 리스트, 메인을

해 볼까요?

 

 

 

 

 

 


 

jsp_이클립스에서

로그인 폼 만들기_login.form


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


jsp_이클립스에서

로그인 프로 만들기 loginPro


 

 

 

 

 

String id pass 파라미터 가져오기

 

1단계 드라이버 로더

2단계 디비 연결 => Connection con

sql select id에 해당하는 회원정보 가져오기

3단계 연결 정보를 이용해서 sql 구문 만들고 실행할 객체 생성 => PreparedStatement

4단계 실행 결과 => ResultSet rs

 

5단계 rs에 저장된 데이터 있는 확인. next() 다음행으로 이동

 

데이터 있으면 True 아이디 있음 없으면 False 아이디 없음

폼 아이디, 비밀번호 디비에 저장된 아이디 비밀번호 일치하면 =>

로그인 인증 => 모든 페이지 상관없이 값이 유지되는 세션 값 생성

세션값 생성 "id", id

main.jsp 이동

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

jsp_이클립스에서 main.jsp 만들기


 

 

 

 

<%

세션 값 가져오기

String id=(String) session.getAttribute("id");

if(세션 값이 없으면) loginForm.jsp 이동

if(id==null){

response.sendRedirect("loginForm.jsp");

}

%>

 

 

 

<%=session.getAttribute("id")%>님 로그인하셨습니다 <br>

 

<input type="button"value="로그아웃"onclick="location.href='logout.jsp'"><br>

 

 

<a href="info.jsp"> 회원정보 조회 </a>

<a href="list.jsp"> 회원 목록 </a>

<a href="deleteForm.jsp"> 회원 정보 삭제 </a>

<a href="updateForm.jsp"> 회원 정보 수정 </a>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


jsp_ 이클립스에서 회원정보

_info.jsp 만들기


 

 

<% request.setCharacterEncoding("utf-8");

String id=(String) session.getAttribute("id");

Class.forName("com.mysql.jdbc.Driver");

String dbUrl="jdbc:mysql://localhost:3306/jspdb5";

String dbUser="root";

String dbPass="1234";

Connection con=DriverManager.getConnection(dbUrl, dbUser, dbPass);

String sql="select * from member where id=?";

PreparedStatement pstmt=con.prepareStatement(sql);

pstmt.setString(1, id);

ResultSet rs=pstmt.executeQuery();

%>

 

<% while(rs.next()){

%> 아이디:<%=rs.getString("id")%>

비밀번호:<%=rs.getString("pass")%>

이름:<%=rs.getString("name")%>

가입 날짜:<%=rs.getTimestamp("reg_date")%>

<%} %>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


jsp_이클립스에서 회원 정보 삭제

_delete.jsp


 

id 세션 값 가져오기

String id=(String) session.getAttribute("id");

==> 다운 캐스팅해야 함!!!

 

 

pass 파라미터 값 가져오기

String pass=request.getParameter("pass");

 

 

1단계 드라이버 로더

Class.forName("com.mysql.jdbc.Driver");

2단계 디비 연결 => Connection con

String dbUrl="jdbc:mysql://localhost:3306/jspdb5";

String dbUser="root";

String dbPass="1234";

Connection con=DriverManager.getConnection(dbUrl, dbUser, dbPass);

 

sql select id에 해당하는 회원정보 가져오기

String sql="select * from student where id=?";

PreparedStatement pstmt=con.prepareStatement(sql);

pstmt.setString(1, id);

ResultSet rs=pstmt.executeQuery();

 

3단계 연결 정보를 이용해서 sql 구문 만들고 실행할 객체 생성 => PreparedStatement

4단계 실행 결과 => ResultSet rs

5단계 rs에 저장된 데이터 있는 확인. next() 다음행으로 이동 데이터 있으면 True

아이디 있음 출력

없으면 False

아이디 없음 출력

if 폼에서 가져온 비밀번호 디비에서 가져온 비밀번호 비교. equals()

맞으면 "비밀번호 맞음" 틀리면 "비밀번호 틀림"

비밀번호 맞으면 3단계 삭제 sql 4단계 실행

 

 

 

if(rs.next()){

out.println("아이디 있음");

if(pass.equals(rs.getString("pass"))){

out.println("비밀번호 성공");

sql="delete from member where id=?" ;

pstmt=con.prepareStatement(sql);

pstmt.setString(1, id);

pstmt.executeUpdate();

session.invalidate();

response.sendRedirect("main.jsp");

} else {

out.println("비밀번호 실패");

%>

<script type="text/javascript">

history.back();

alert("비밀번호 틀렸습니다");

</script>

<% }

} else {

out.println("아이디 없음");

}

%>

<script type="text/javascript">

alert("아이디가 틀렸습니다")

history.back();

</script>

 

</body>

</html>

 

 

 

 

 

 

 

 

 

 

 

 

 


 

jsp_이클립스에서 회원정보 수정

_updatePro.jsp


 

 

 

회원정보 수정

if(rs.next()){

out.println("아이디 있음");

if(pass.equals(rs.getString("pass"))){

out.println("비밀번호 맞음");

sql="update member set name=? where id=?";

pstmt=con.prepareStatement(sql);

pstmt.setString(1, name);

pstmt.setString(2, id);

pstmt.executeUpdate();

%>

<script type="text/javascript">

alert("<%=id%>님의 이름이 수정되셨습니다");

location="main.jsp";

</script>

<% } else {

out.println("비밀번호 틀림");

}

} else {

out.println("아이디 없음");

}

%>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


jsp_이클립스에서 회원 목록

_ list.jsp 만들기

 


 

 

 

 

<table border="1">

<tr><td> 아이디 </td><td> 비밀번호 </td> <td> 이름 </td> <td>가 이 날짜 </td></tr>

<% while(rs.next()){

%><tr><td><%=rs.getString("id") %></td><td><%=rs.getString("pass") %></td>

<td><%=rs.getString("name") %></td><td><%=rs.getTimestamp("reg_date")%></td></tr><%

}%>

</table>

 

 

 

 

 

if(rs.next()){

out.println("아이디 있음");

if(pass.equals(rs.getString("pass"))){

out.println("비밀번호 성공");

sql="delete from member where id=?" ;

pstmt=con.prepareStatement(sql);

pstmt.setString(1, id);

pstmt.executeUpdate();

session.invalidate();

response.sendRedirect("main.jsp");

} else {

out.println("비밀번호 실패");

%>

<script type="text/javascript">

history.back();

alert("비밀번호 틀렸습니다");

</script>

<% }

} else {

out.println("아이디 없음");

}

%>

<script type="text/javascript">

alert("아이디가 틀렸습니다")

history.back();

</script>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

ㅣ읽느라 수고 많으셨어요~ㅣ

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

부족한 글을 읽어주셔서 감사드립니다

아직 부족한 게 많으니

틀린 곳이 있다면

조언의 말씀 꼭 부탁드립니다!!!!

 

 

 

 

 

 


 

 

반응형

관련글 더보기