JAVA/Eclipse

게시판 만들어 보기(ID 중복 체크하기) - (6)

luckydadit 2025. 1. 23. 11:55

1. ID 중복 체크 기능 만들어보기

members 테이블의 기존 회원 정보를 가지고 ID 중복 체크 기능을 구현하여 확인해 보겠습니다.

 

1.1 Main 클래스 생성하기 (클래스명 : MemberIdCheck)

package com.board.main;

 

import java.util.Scanner;

 

import com.board.dao.MemberDao;

 

public class MemberIdCheck {

public static void main(String[] args) {

       Scanner sc = new Scanner(System.in);

 

        System.out.println("중복 체크할 id를 입력해주세요.");

        String id = sc.next();

       

        boolean chkId = false; // 아이디 중복 체크용 boolean 변수를 chkId를 생성합니다. 초기값은 false로 지정합니다.

 

        MemberDao dao = new MemberDao();

 

        // MemberDao 클래스의 IsIdCheck메소드를 id 객체를 매개변수로 호출하여 결과값을 반환받습니다.

        chkId = dao.IsIdCheck(id)

 

        if(chkId == true) { // id가 존재함

        System.out.println(id + "는(은) 이미 존재하여 사용 불가합니다.");

        }else {

        System.out.println(id + "는(은) 사용 가능합니다.");

        }

 

        }

}

 

 

1.2 ID 중복 체크 기능 구현하기 (메소드 명 : IsIdCheck)

public boolean IsIdCheck(String id) {

// 회원 테이블에 해당 id가 존재하면, true를 반환합니다.

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

 

        boolean chkId = false; // boolean 변수 chkId를 생성하며, 초기값은 false로 지정해줍니다.

 

        Connection conn = null;

        PreparedStatement pstmt = null;

        ResultSet rs = null;

 

        try {

        conn = super.getConnection();

        pstmt = conn.prepareStatement(sql);

 

        pstmt.setString(1, id);

 

        rs = pstmt.executeQuery();

 

        if(rs.next()) { // sql문의 결과가 존재하면 chkId 값을 true로 바꿔 줍니다.

        chkId = true;

        }

 

        } catch (Exception e) {

        try {

        conn.rollback();

        } catch (SQLException e1) {

                e1.printStackTrace();

        }

        e.printStackTrace();

        } finally {

                try {

                        if(pstmt != null){pstmt.close(); }

                        if(conn != null){conn.close(); }

                } catch (Exception e2) {

                e2.printStackTrace();

                }

        }

 

        return chkId; // 결과값을 호출해왔던 곳으로 반환합니다.

}

 

1.3 구현한 기능 확인하기