PROJECT
Project(3)-2. 회원가입
삼색이삼랑해
2022. 10. 14. 16:36
Controller
private void JoinData() {
MemberDto data = new MemberDto();
dView.JoinView(data);
}
View
public void JoinView(MemberDto data) {
subTitle("회원가입");
data.setM_id(ioc.inStr("ID : "));
String mid = data.getM_id();
boolean checkId = dDao.idCheck(mid);
if (!checkId) {
data.setM_pwd(ioc.inStr("PWD : "));
data.setM_name(ioc.inStr("NAME : "));
data.setM_phone(ioc.inStr("PHONE : "));
data.setM_birth(ioc.inStr("BIRTH(yyyy-mm-dd) : "));
int res = dDao.JoinDao(data);
if (res == 0) {
ioc.twoPrint("회원가입 실패");
} else {
ioc.twoPrint("회원가입 성공");
}
} else {
ioc.twoPrint("ID가 중복되었습니다.");
}
}
사용자가 id를 입력하면 Dao의 idCheck()로 가 DB 내에 해당 아이디가 있는지 중복 체크하고 만약 없다면(false) 각 정보를 입력할 수 있게 하고, 반대로 있다면(true) id가 중복되었다는 문장을 띄어준다.
Dao
- 아이디 중복 체크
public boolean idCheck(String id) {
String query = "SELECT * FROM membertbl WHERE m_id = ?";
try {
conn = DriverManager.getConnection(url, user, pass);
pstmt = conn.prepareStatement(query);
pstmt.setString(1, id);
rs = pstmt.executeQuery();
check = rs.next();
} catch(Exception e) {
//
} finally {
close();
}
return check;
}
- 회원가입 입력
public int JoinDao(MemberDto data) {
int res = 0;
String query = "INSERT INTO membertbl VALUES (?,?,?,?,?)";
try {
conn = DriverManager.getConnection(url, user, pass);
pstmt = conn.prepareStatement(query);
pstmt.setString(1, data.getM_id());
pstmt.setString(2, data.getM_pwd());
pstmt.setString(3, data.getM_name());
pstmt.setString(4, data.getM_phone());
pstmt.setDate(5, Date.valueOf(data.getM_birth()));
res = pstmt.executeUpdate();
} catch (SQLException e) {
res = 0;//삽입 실패
} finally {
close();
}
return res;
}