본문으로 바로가기
반응형

Model 1 (기초)간략 로그인 기능 만들기..    

기본적으로 오라클 DB와 연동해서 진행을 하였으며,   

DB 테이블 구성은 아이디, 비밀번호, 이름, 번호 입니다.   

JDK 1.8 버전   
Ojdbc7 버전  

 

userupdate.jsp

1. session을 통해 id값을 가져온다. 가져온 id 값을 통해 dao.UserUpdate 메소드를 이용한다.

2. dao.UserUpdate 메소드를 통해 해당되는 id 의 정보를 가져온다.

3. 수정한 정보를 userupdatepro.jsp 로 전송 

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
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
    <%@ page import="myproject.user.bean.UserDBBean" %>
<%@ page import="myproject.user.bean.UserDBDAO" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<%
        request.setCharacterEncoding("euc-kr");
        
        String id = (String)session.getAttribute("id");
        UserDBDAO userdao = new UserDBDAO();
      
        
        UserDBBean userbean = userdao.UserUpdate(id);
 
   
%>
<body>
<%=session.getAttribute("id"%>정보수정
<table border="1">
<tr>
<td>
회원아이디 <input type="hidden" name="id" value ="<%=userbean.getId()%>"/>
</td>
<td>
회원비밀번호:<input type="text" name="pw" value=" <%=userbean.getPw()%>"/>
</td>
<td>
회원이름: :<input type="text" name="name" value=" <%=userbean.getName()%>"/>
</td>
 
<td>
회원번호: :<input type="text" name="phone" value=" <%=userbean.getPhone()%>"/>
</td>
<td>
<%=session.getAttribute("id")%>님이 방문함
</td>
<tr><td><input type="button" value="수정" onclick="location.href = 'userupdatepro.jsp'"></td></tr>
</body>
</html>
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
 


userupdatepro.jsp

1. userupdate로 부터 받아온 파라미터를 각 변수에 저장한다.

2. 파라미터는 기본적으로 String 형으로 받아오기 때문에 int형인 경우 Integer.parseInt 를 사용한다.

3. 파라미터를 저장한 변수들을 UserDBBean 에 저장한다.

4. UserDBDAO.UpdatePro 메소드 매개변수에(UserDBBean 참조변수 할당)

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
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
 <%@ page import="myproject.user.bean.UserDBBean" %>
<%@ page import="myproject.user.bean.UserDBDAO" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<%
        if(session.getAttribute("id"== null){
            out.println("세션종료");
        }
    
%>
<%
        request.setCharacterEncoding("euc-kr");
        String id = request.getParameter("id");
        String name = request.getParameter("name");
        String pw = request.getParameter("pw");
        int phone = Integer.parseInt(request.getParameter("phone"));
        
        UserDBBean User = new UserDBBean();
        
        User.setId(id);
        User.setPw(pw);
        User.setName(name);
        User.setPhone(phone);
        
        UserDBDAO UserDao = new UserDBDAO();
        UserDao.UserUpdatePro(User);
        
 
%>
<body>
 
</body>
</html>
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
 


 

UserDBDAO.java

1. UserUpdate 메소드는 id값을 매개변수로 가져오고,  회원 id 값과 같은 모든 정보를 가져온다.

2. UserUpdatePro 메소드는 변경된 값을 저장하는 메소드(UserDBBean을 매개변수로 가짐)

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
public UserDBBean UserUpdate(String id)  {
            UserDBBean userbean = null;
            try {
                    Connection con = null;
                    PreparedStatement pstmt = null;
                    ResultSet rs = null;
                
                
                    String DriverName = "oracle.jdbc.driver.OracleDriver";
                    String url = "jdbc:oracle:thin:@localhost:1521:XE";
                    String user = "jae";
                    String pw = "test";
                    
                    Class.forName(DriverName);
                    con = DriverManager.getConnection(url, user, pw);
                    System.out.println("db연결성공");
                    String sql = "select * from tbl_user where id = ?";
                    
                    pstmt = con.prepareStatement(sql);
                    pstmt.setString(1, id);
                    rs = pstmt.executeQuery();
                
                    
                    if(rs.next()) {
                         userbean = new UserDBBean();
                        
                        userbean.setId(rs.getString("id"));
                        userbean.setPw(rs.getString("pw"));
                        userbean.setName(rs.getString("name"));
                        userbean.setPhone(rs.getInt("phone"));
                    }
 
            }catch(Exception e) {
                System.out.println(e.getMessage());
            }
            
            return userbean;
        }
        
        public void UserUpdatePro(UserDBBean User) {
                try {
                    Connection con = null;
                    PreparedStatement pstmt = null;
                    
                    String DriverName = "oracle.jdbc.driver.OracleDriver";
                    String url = "jdbc:oracle:thin:@localhost:1521:xe";
                    String user = "jae";
                    String pw = "pw";
                    
                    Class.forName(DriverName);
                    con = DriverManager.getConnection(url,user,pw);
                    System.out.println("업데이트 디비 연결 완료");
                    String sql = "update tbl_user set id = ? ,pw = ?, name = ? phone = ? ";
                    pstmt = con.prepareStatement(sql);
                    
                    pstmt.setString(1User.getId());
                    pstmt.setString(2,  User.getPw());
                    pstmt.setString(3, User.getName());
                    pstmt.setInt(4, User.getPhone());
                    pstmt.executeUpdate();
                }catch(Exception e) {
                    System.out.println(e.getMessage());
                }
                
            
        }
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
 
반응형