로그인을 모두 만들었으니 이제 회원가입 페이지를 만들어보자.
회원가입에는 ID중복확인과 회원등록을 위해 서버와 통신이 두가지가 필요했다.
서버에서 요청을 각각 처리할 수 있도록 해주었다.
java서버
회원등록을 처리하는 코드 기본적으로 로그인과 같지만 sql문과 sql문을 실행하는 부분에서 조금 차이가 있다.
@RequestMapping (value="/signup",method = RequestMethod.POST)
@ResponseBody
public LoginVO Signup(@RequestBody LoginVO loginvo){
try {
Class.forName(driver);
con = DriverManager.getConnection(
"jdbc:mariadb://127.0.0.1:3306/logindb",
"root",
"1995sus");
if( con != null ) {
System.out.println("DB 접속 성공");
}
String id = loginvo.id;
String pwd = loginvo.pwd;
stmt = con.createStatement();
String sql = "insert into users(id,pwd) values('"+id+"','"+pwd+"')";
System.out.println(sql);
r = stmt.executeUpdate(sql);
System.out.println("row : "+r);
} catch (ClassNotFoundException e) {
System.out.println("드라이버 로드 실패");
} catch (SQLException e) {
System.out.println("DB 접속 실패");
e.printStackTrace();
}
return loginvo;
}
중복확인
@RequestMapping (value="/idcheck",method = RequestMethod.POST)
@ResponseBody
public LoginVO IdCheck(@RequestBody LoginVO loginvo){
try {
Class.forName(driver);
con = DriverManager.getConnection(
"jdbc:mariadb://127.0.0.1:3306/logindb",
"root",
"1995sus");
if( con != null ) {
System.out.println("DB 접속 성공");
}
String id = loginvo.id;
String pwd = loginvo.pwd;
stmt = con.createStatement();
String sql = "select num from users where id = '"+id+"';";
System.out.println(sql);
rs = stmt.executeQuery(sql);
rs.next();
try{
user_num = rs.getString("num");
loginvo.setMsg(user_num);
}catch (Exception e){
loginvo.setMsg("null");
}
} catch (ClassNotFoundException e) {
System.out.println("드라이버 로드 실패");
} catch (SQLException e) {
System.out.println("DB 접속 실패");
e.printStackTrace();
}
return loginvo;
}
이제 웹과 앱에서 페이지를 만들고 요청하는 코드를 짜주기만 하면 된다.