본문 바로가기

JSP Model2

JSP 모델2 Member - net.member.db (작성중)

----------------------------------------------------------------------------------------------

MemberBean.java

----------------------------------------------------------------------------------------------

package net.member.db;


public class MemberBean {

private String id;

private String passwd;

private String name;

private int age;

private String gender;

private String email;

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getPasswd() {

return passwd;

}

public void setPasswd(String passwd) {

this.passwd = passwd;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public String getGender() {

return gender;

}

public void setGender(String gender) {

this.gender = gender;

}

public String getEmail() {

return email;

}

public void setEmail(String email) {

this.email = email;

}


}


----------------------------------------------------------------------------------------------

MemberDAO.java

----------------------------------------------------------------------------------------------


package net.member.db;


import java.sql.*;

import java.util.*;


import javax.naming.*;

import javax.sql.*;


public class MemberDAO {

    Connection con;

    PreparedStatement pstmt;

    ResultSet rs;

    

    public void connectDB() {

        // DB연결을 위한 컨넥션풀 설정

        try {

            Context init = new InitialContext();

            DataSource ds = 

                    (DataSource)init.lookup("java:comp/env/jdbc/jsp2");

            con = ds.getConnection();

        } catch (Exception e) {

            System.out.println("DB 연결 실패!");

        }

    } // connectDB()

    public void closeDB() {

        if(con != null) try { con.close(); } catch(Exception e) {}

        if(pstmt != null) try { pstmt.close(); } catch(Exception e) {}

        if(rs != null) try { rs.close(); } catch(Exception e) {}

    } // closeDB()

    

    public boolean joinMember(MemberBean memberBean){

    connectDB();

    // MemberBean 객체의 데이터를 DB 에 전달

    String sql = "insert into member values(?,?,?,?,?,?)";

   

    try{

    pstmt = con.prepareStatement(sql);

    pstmt.setString(1, memberBean.getId());

    pstmt.setString(2, memberBean.getPasswd());

    pstmt.setString(3, memberBean.getName());

    pstmt.setInt(4, memberBean.getAge());

    pstmt.setString(5, memberBean.getGender());

    pstmt.setString(6, memberBean.getEmail());

    int result = pstmt.executeUpdate();

   

    // executeUpdate() 실행 결과가 1 이면 true 리턴

    if(result == 1){

    return true;

    }

    }catch(Exception e){

    e.printStackTrace();

    }finally{

    closeDB();

    }

    return false;

    }// joinMember()

    

    public int isMember(MemberBean memberBean) {

        connectDB();

        

        int result = -1;

        // 아이디에 해당하는 패스워드 조회

        String sql = "SELECT passwd FROM member WHERE id=?;";

        

        try {

            pstmt = con.prepareStatement(sql);

            pstmt.setString(1, memberBean.getId());

            rs = pstmt.executeQuery();

            

            // 조회 결과 비교

            if(rs.next()) {

                // 조회 결과가 있을 경우

                // MemberBean의 passwd와 조회결과의 passwd 값 비교

                if(rs.getString(1).equals(memberBean.getPasswd())) {

                    // passwd가 일치할 경우 로그인 성공 result = 1

                    result = 1;

                } else {

                    // passwd가 불일치할 경우 result = 0

                    result = 0;

                }

            } else {

                // 조회 결과가 없을 경우 아이디 없음 result = -1

                result = -1;

            }

        } catch(Exception e) {

            e.printStackTrace();

        } finally {

            closeDB();

        }

        

        return result;

    }

 }