JAVA 1회용 회원가입 로그인 기능 구현
데이터베이스 기능은 없어서 프로그램 종료되면 회원 정보 초기화됨
import java.util.ArrayList;
import java.util.Scanner;
class Pad {
public static void main(String[] args) {
new Auth();
}
}
class Auth {
Scanner sc;
ArrayList<Idpw> users;
boolean isFirst = true;
Auth() {
init();
}
void init() {
if (isFirst) {
sc = new Scanner(System.in);
users = new ArrayList<Idpw>();
Idpw admin = new Idpw();
admin.setId("admin");
admin.setPw("admin");
users.add(admin);
}
System.out.println("1. 로그인\r\n" + "2. 회원가입");
String input = sc.next();
if (input.equals("1")) {
login();
} else if (input.equals("2")) {
signUp();
}
}
void login() {
System.out.println("ID를 입력하시오");
String id = sc.next();
String pw = new String();
boolean isId = false;
for (Idpw idpw : users) {
if (idpw.getId().equals(id)) {
isId = true;
System.out.println("비밀번호를 입력하시오");
pw = sc.next();
if (pw.equals(idpw.getPw())) {
menu();
break;
} else {
System.out.println("비밀번호가 틀렸습니다.");
isFirst = false;
init();
break;
}
}
}
if(!isId) {
System.out.println("등록되지 않은 ID입니다");
isFirst = false;
init();
}
}
void signUp() {
String id = new String();
String pw = new String();
Idpw newUser = new Idpw();
String confirm = new String();
System.out.println("ID를 입력하시오");
id = sc.next();
for (Idpw idpw : users) {
if (id.equals(idpw.getId())) {
System.out.println("이미 등록된 아이디입니다.");
signUp();
break;
}
}
System.out.println("ID : " + id);
newUser.setId(id);
System.out.println("비밀번호를 입력하시오");
pw = sc.next();
newUser.setPw(pw);
System.out.println("ID : " + id);
System.out.println("PW : " + pw);
System.out.println("회원가입하기: y/n");
confirm = sc.next();
if (confirm.equals("y")) {
users.add(newUser);
}
isFirst = false;
init();
}
void menu() {
System.out.println("로그인 성공");
}
}
class Idpw {
String id;
String pw;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPw() {
return pw;
}
public void setPw(String pw) {
this.pw = pw;
}
}
댓글
댓글 쓰기