임시 비밀번호 만들기
비밀번호를 재발급해줄 때 사용할 수 있는 임시 비밀번호.
1. 원하는 길이의 랜덤 비밀번호 생성 (매개변수 : 사이즈)
public static String temporaryPassword(int size) {
StringBuffer buffer = new StringBuffer();
Random random = new Random();
String chars[] = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g
,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,0,1,2,3,4,5,6,7,8,9".split(",");
for (int i = 0; i < size; i++) {
buffer.append(chars[random.nextInt(chars.length)]);
}
return buffer.toString();
}
2. 원하는 비밀번호 구성 및 원하는 길이의 랜덤 비밀번호 생성 (매개변수 : 구성, 사이즈)
public static String randomValue(String type, int cnt) {
StringBuffer strPwd = new StringBuffer();
char str[] = new char[1];
// 특수기호 포함
if (type.equals("P")) {
for (int i = 0; i < cnt; i++) {
str[0] = (char) ((Math.random() * 94) + 33);
strPwd.append(str);
}
// 대문자로만
} else if (type.equals("A")) {
for (int i = 0; i < cnt; i++) {
str[0] = (char) ((Math.random() * 26) + 65);
strPwd.append(str);
}
// 소문자로만
} else if (type.equals("S")) {
for (int i = 0; i < cnt; i++) {
str[0] = (char) ((Math.random() * 26) + 97);
strPwd.append(str);
}
// 숫자형으로
} else if (type.equals("I")) {
int strs[] = new int[1];
for (int i = 0; i < cnt; i++) {
strs[0] = (int) (Math.random() * 9);
strPwd.append(strs[0]);
}
// 소문자, 숫자형
} else if (type.equals("C")) {
Random rnd = new Random();
for (int i = 0; i < cnt; i++) {
if (rnd.nextBoolean()) {
strPwd.append((char) ((int) (rnd.nextInt(26)) + 97));
} else {
strPwd.append((rnd.nextInt(10)));
}
}
}
return strPwd.toString();
}
'Programming > java' 카테고리의 다른 글
[java] Client의 웹브라우저 버전 조회 (0) | 2015.04.24 |
---|---|
[java] Client IP 조회 (0) | 2015.04.24 |
[java] 영문/한글 길이 구하기 (0) | 2015.03.26 |
[java] java JSON 데이터 파싱 (0) | 2015.01.20 |
[java] Geocoder을 이용해 주소를 위도/경도로 변환하기 (1) | 2015.01.16 |