Recent Posts
Link
250x250
오늘보다 더 나은 내일의 나에게_
비전공자의 IoT 국비 교육 수강일지 Day_44 본문
728x90
JavaScript
댓글 작성 후 "post reply" 버튼을 누르면 댓글이 등록되지만 실시간으로 보이지 않고 새로고침을 해야 보이는 상황! 버튼을 누르고 정상적으로 등록이 되면 console창에 success 출력!
댓글 등록 후 바로 댓글 보는 기능
board_main.jsp에서 javascript부분 수정
function addReply( ) 수정
JSP
로그인 후 개인정보수정버튼을 눌렀을 때
현재 로그인 중인 아이디 전화번호, 주소가 출력되도록 작성
코드
더보기세션 객체를 생성하고 활용
<body style="text-align: center;"> <% memberVO vo = (memberVO)session.getAttribute("loginvo"); %> <!-- Wrapper --> <div id="wrapper"> <!-- Menu --> <nav id="Update"> <ul class="actions vertical"> <form> <li><h5>회원정보수정</h5></li> <%--비어있는 li태그에 이메일출력, 전화번호/집주소 현재 데이터 출력 --%> <%--1. 현재 로그인 한 사람의 EMAIL를 아래에 li태그 안에 출력하시오.--%> <%--2. 입력한 정보를 UpdateCon으로 전송하시오.--%> <li><%=vo.getEmail()%></li> <li><input type="password" placeholder="PW를 입력하세요" style="width: 500px; margin: 0 auto;"></li> <li><input type="text" placeholder="전화번호를 입력하세요" style="width: 500px; margin: 0 auto;" value="<%= vo.getTel()%>"></li> <li><input type="text" placeholder="집주소를 입력하세요" style="width: 500px; margin: 0 auto;" value="<%= vo.getAddress()%>"></li> <li><input type="submit" value="Update" class="button fit" style="width: 500px; margin: 0 auto;" ></li> </form> </ul> </nav> </div> </body>
로그아웃 기능
로그인 후 로그아웃 버튼 누르면 로그아웃!
=> 세션을 삭제해주면 로그아웃이 된다!
코드
더보기package com.member; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; @WebServlet("/LogoutCon") public class LogoutCon extends HttpServlet { protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1. 세션 객체 생성 HttpSession session = request.getSession(); //2. session (loginvo) 값 삭제 session.removeAttribute("loginvo"); //3. main.jsp 이동 response.sendRedirect("main.jsp"); } }
개인정보 수정 기능
회원정보 수정 UPDATE 눌렀을 때 콘솔 창에 수정 성공 출력, 실패 시 수정 실패출력하고 메인 페이지 하단의 전화번호, 주소가 수정한 값으로 바뀌도록 출력
수정 완료 시 메인 페이지에서 아래 이미지와 같이 출력
코드
더보기package com.member; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.VO.memberVO; @WebServlet("/UpdateCon") public class UpdateCon extends HttpServlet { protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //한글 데이터 인코딩 request.setCharacterEncoding("euc-kr"); //pw, tel, address / email -> session HttpSession session = request.getSession(); memberVO vo = (memberVO)session.getAttribute("loginvo"); String email = vo.getEmail(); String pw = request.getParameter("pw"); String tel = request.getParameter("tel"); String address = request.getParameter("address"); //JDBC_WEB 프로젝트 => UpdateCon 참고 //MessageSystem -> JoinCon 참고 //수정 성공 -> 콘솔창에 "수정성공" 출력 (페이지 이동x) //수정 실패 -> 콘솔창에 "수정실패" 출력 (페이지 이동x) Connection conn = null; PreparedStatement psmt = null; try { Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@127.0.0.1:1521:xe"; String dbid = "hr"; String dbpw = "hr"; conn = DriverManager.getConnection(url,dbid,dbpw); String sql = "update message_member set pw = ?, tel = ?, address = ? where email = ?"; psmt = conn.prepareStatement(sql); psmt.setString(1, pw); psmt.setString(2, tel); psmt.setString(3, address); psmt.setString(4, email); int cnt = psmt.executeUpdate(); if(cnt>0) { System.out.println("수정성공"); //사용자의 수정된 값을 가지고 있는 vo memberVO vo2 = new memberVO(email, tel, address); session.setAttribute("loginvo", vo2); response.sendRedirect("main.jsp"); }else { System.out.println("수정실패"); response.sendRedirect("main.jsp"); } }catch(Exception e) { e.printStackTrace(); }finally { try { psmt.close(); conn.close(); } catch (Exception e2) { e2.printStackTrace(); } } } }
728x90
'비전공자의 코딩일지' 카테고리의 다른 글
비전공자의 IoT 국비 교육 수강일지 Day_49 (0) | 2022.02.26 |
---|---|
비전공자의 IoT 국비 교육 수강일지 Day_46 (0) | 2022.02.23 |
비전공자의 IoT 국비 교육 수강일지 Day_40 (0) | 2022.02.15 |
비전공자의 IoT 국비 교육 수강일지 Day_39 (0) | 2022.02.14 |
비전공자의 IoT 국비 교육 수강일지 Day_38 (0) | 2022.02.11 |
Comments