jsp 회원등록,수정,삭제,리스트(CRUD) 로직 구현하기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
else if (command.equals("/member/memberLoginAction.do")) { // 로그인 아이디 비밀번호 입력후 실행되는 로직
// memberLogin 페이지에서 확인버튼을 누르면 memberid 와 memberpwd 를 받아와서
// 파라미터로 가져옴.
System.out.println("연결됨");
String memberId = request.getParameter("memberId");
String memberPwd = request.getParameter("memberPwd");
// 그리고 로그인 로직을 실행하기 위해 memberDao 로직을 객체 생성하구
MemberDao md = new MemberDao();
// 로직을 적용하여 멤버 데이터 객체인 MemberVo 에다가 값을 넣어줌.
MemberVo mv = md.Login(memberId, memberPwd);
// 로그인 여부에 따라서 볼수 있는 페이지와 볼수 없는 페이지를 구분하기위해서
// LoginActio 페이지에서 로그인이 되면 session 값을 가지고
// 볼수 있는 유무룰 파악하기 위해서 세선을 지정해줌 .. 세션을 이클립스에서 가져옴.
HttpSession session = request.getSession();
// mv = 값은 위에서 mv.Login 연결 시킨 객체가 값이 나오게 되면 mv!=null 값을실행.
if(mv != null) {
session.setAttribute("midx",mv.getmidx()); // 로그인 완료하면 세션값을 midx 번호
session.setAttribute("memberId", mv.getMemberid()); // 로그인 완료시 아이디 지정
session.setAttribute("memberPwd", mv.getMemberPwd()); // 비밀번호지정
session.setAttribute("membername", mv.getMemberName()); // 이름 지정 나중에 세션값을 이용해서 사용
response.sendRedirect(request.getContextPath()+"/"); // << 리다이렉트 하는경우네느 request.setattribute 사용 불가능함.. 서블릿 자체적인 로직이라서 세션값에 담아서
// memberid 가 값이 없을때는 다시 로그인 페이지로 돌아갑니다..
}else{
response.sendRedirect(request.getContextPath()+"/member/memberLogin.do");
}
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
public MemberVo Login(String memberid,String memberPwd) { // 아이디 비밀번호 입력시 로직 실행
MemberVo mv = null; // 데이터 객체 담아줄거임 return 값
ResultSet rs = null; // sql 실행결과 값 지정
// sql 로그인하기위한 sql 쿼리문
String SQL = "select * from member where delyn='N' and memberid=? and memberPwd=?";
try {
pstmt = conn.prepareStatement(SQL);
pstmt.setString(1, memberid);
pstmt.setString(2, memberPwd);
rs = pstmt.executeQuery(); // 여기서 성공하면 rs 값이 = 1 , 실패하면 0 이됨
// rs 의 값이 실행되고 한칸씩 밑으로 계속 도는 로직
if(rs.next()) {
// 데이터베이스에 입력된 멤버 변수에 대한 vo 객체 생성
mv=new MemberVo();
// vo 객체에다가 사용할 값 지정 해줌
mv.setmidx(rs.getInt("midx"));
mv.setMemberid(rs.getString("memberid"));
mv.setMemberPwd(rs.getString("memberPwd"));
mv.setMemberName(rs.getString("membername"));
}
// 예외처리구문 어디가 잘못됫는지 확인
} catch (SQLException e) {
e.printStackTrace();
}
return mv; // vo 객체에다가 값 지정해놓고 나중에 사용
}
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="damain.MemberVo" %>
<%
ArrayList<MemberVo> alist = (ArrayList<MemberVo>)request.getAttribute("alist");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" href="style.css">
<script src="http://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<section class="logo-form">
<h1>로 그 인</h1>
<form action="<%=request.getContextPath()%>/member/memberLoginAction.do" method="post">
<input type="hidden" name="midx">
<div class="int-area">
<input type="text" name="memberId" id="id" autocomplete="off" required>
<label for="id">USER ID</label>
</div>
<div class="int-area">
<input type="password" name="memberPwd" id="pw" autocomplete="off" required>
<label for="id">password</label>
</div>
<div class="btn-area">
<button id="btn" type="submit">login</button>
</div>
</form>
<div class="caption">
<a href="<%=request.getContextPath()%>/member/memberFindByid.do">forgot userid?</a><Br><br>
<a href="<%=request.getContextPath()%>/member/memberFindBypwd.do">forgot password?</a>
</div>
</section>
<!-- java script -->
<script>
let id = $('#id');
let pw = $('#pw');
let btn = $('#btn');
$(btn).on('click',function(){
if($(id).val()==""){
$(id).next("label").addClass("warning");
setTimeout(function(){
$('label').removeClass('warning');
},1500);
}
else if($(pw).val()==""){
$(pw).next("label").addClass("warning");
setTimeout(function(){
$('label').removeClass('warning');
},1500);
}
action = "<%=request.getContextPath()%>/member/memberJoinAction.do";
method = "post";
});
</script>
</body>
</html>
|
cs |
'기존 > 🏀Jsp' 카테고리의 다른 글
[JSP] jsp 비밀번호 찾기 로직 구현하기 (0) | 2022.05.31 |
---|---|
[JSP] jsp 회원 아이디 찾기 로직 구현하기 (0) | 2022.05.31 |
[JSP] jsp 회원가입 로직 구현하기 (0) | 2022.05.31 |
[JSP]게시판 만들기-프론트컨트롤러 (0) | 2022.05.31 |
Http post 형식으로 보내기 이클립스 (0) | 2022.05.29 |