무엇을 기준으로 회원을 찾을것인가?
•
이메일은 너무 길다!
•
아이디도 좋지만 아이디와 닉네임 둘 다 중복되면 어떡하나?
결론
아이디를 닉네임 + #4자리 랜덤숫자 로 만들자!
게임에서 얻어온 아이디어이다. 대략 이런식으로 구성하겠다는 소리.
이렇게 변경하면, 로그인 후 개인의 방으로 이동하게 되는데 url 에 사용하기도 편할것 같고,,? (아니면 금방 엎으면 되니까..) 이런저런 이유로 변경하게 되었다.
package com.team.project2;
import com.team.project2.user.UserMapper;
import com.team.project2.user.UserVO;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.mybatis.spring.boot.test.autoconfigure.MybatisTest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
import org.springframework.test.annotation.Rollback;
import java.util.Random;
@MybatisTest
@Rollback(false)
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
public class UserTest {
@Autowired
private UserMapper userMapper;
@Test
@DisplayName("SignUp Test")
public void signUpTest() throws Exception {
// 유저 코드 생성
Random random = new Random();
StringBuilder sb = new StringBuilder();
String id;
for (int i = 0; i < 4; i++) {
String randomNum = Integer.toString(random.nextInt(10));
sb.append(randomNum);
}
id = sb.toString();
UserVO userVO = new UserVO();
userVO.setId("nickname1#" + id);
userVO.setPassword("123qwe!@#QWE");
userVO.setEmail("user1@study.com");
userVO.setNickname("nickname1");
userVO.setTitle("lv.1");
userVO.setWithdraw(false);
userMapper.insertUser(userVO);
System.out.println("회원가입이 완료되었습니다.");
}
}
Java
복사
결과
아이디 찾거나 할때 이메일을 기준으로 하면 될것 같습니당 (중복검사 하니까)
닉네임의 경우 중복이 가능! (구분은 랜덤코드로)
똑같은 닉네임 하고 싶을수도.. 있잖아요..?