Random() 함수를 이용해서 아이디, 이름을 생성해보자.
지난번 포스팅에서 처럼 엑셀로 생성해서 csv 파일로 밀어넣으려고 했는데 데이터를 생각보다 많이 만들어야 해서 그냥 프로그래밍으로 짜기로 했다.
아래 예시는 groovy로 짜본 예시이다. 자바도 동일하니 활용하면 된다.
<규칙>
randomID : 알파벳(1자리) + 알파벳, 숫자 조합(4자리) + 숫자3자리
randomName : 한글성(1자리) + 한글(2자리)
def alpabets = ['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']
def charaters = ['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']
def sungchars = ["김", "이", "박", "최", "정", "강", "조", "윤", "장", "임", "한", "오", "서", "신", "권", "황", "안",
"송", "류", "전", "홍", "고", "문", "양", "손", "배", "조", "백", "허", "유", "남", "심", "노", "정", "하", "곽", "성", "차", "주",
"우", "구", "신", "임", "나", "전", "민", "유", "진", "지", "엄", "채", "원", "천", "방", "공", "강", "현", "함", "변", "염", "양",
"변", "여", "추", "노", "도", "소", "신", "석", "선", "설", "마", "길", "주", "연", "방", "위", "표", "명", "기", "반", "왕", "금",
"옥", "육", "인", "맹", "제", "모", "장", "남", "탁", "국", "여", "진", "어", "은", "편", "구", "용"]
def namechars = ["가", "강", "건", "경", "고", "관", "광", "구", "규", "근", "기", "길", "나", "남", "노", "누", "다",
"단", "달", "담", "대", "덕", "도", "동", "두", "라", "래", "로", "루", "리", "마", "만", "명", "무", "문", "미", "민", "바", "박",
"백", "범", "별", "병", "보", "빛", "사", "산", "상", "새", "서", "석", "선", "설", "섭", "성", "세", "소", "솔", "수", "숙", "순",
"숭", "슬", "승", "시", "신", "아", "안", "애", "엄", "여", "연", "영", "예", "오", "옥", "완", "요", "용", "우", "원", "월", "위",
"유", "윤", "율", "으", "은", "의", "이", "익", "인", "일", "잎", "자", "잔", "장", "재", "전", "정", "제", "조", "종", "주", "준",
"중", "지", "진", "찬", "창", "채", "천", "철", "초", "춘", "충", "치", "탐", "태", "택", "판", "하", "한", "해", "혁", "현", "형",
"혜", "호", "홍", "화", "환", "회", "효", "훈", "휘", "희", "운", "모", "배", "부", "림", "봉", "혼", "황", "량", "린", "을", "비",
"솜", "공", "면", "탁", "온", "디", "항", "후", "려", "균", "묵", "송", "욱", "휴", "언", "령", "섬", "들", "견", "추", "걸", "삼",
"열", "웅", "분", "변", "양", "출", "타", "흥", "겸", "곤", "번", "식", "란", "더", "손", "술", "훔", "반", "빈", "실", "직", "흠",
"흔", "악", "람", "뜸", "권", "복", "심", "헌", "엽", "학", "개", "롱", "평", "늘", "늬", "랑", "얀", "향", "울", "련"]
def randomID = ""
def randomName = ""
def insertSql = ""
Random rn = new Random()
for (int i=0; i<10; i++) {
randomID = alpabets[rn.nextInt(alpabets.size())] + charaters[rn.nextInt(charaters.size())] + charaters[rn.nextInt(charaters.size())] + charaters[rn.nextInt(charaters.size())] + charaters[rn.nextInt(charaters.size())] + rn.nextInt(1000)
randomName = sungchars[rn.nextInt(sungchars.size())] + namechars[rn.nextInt(namechars.size())] + namechars[rn.nextInt(namechars.size())]
log.warn "ID: ${randomID}, Name: ${randomName}"
}
<결과>
ID: dk1hc486, Name: 채길탁
ID: pjlzb658, Name: 송만윤
ID: ejx6b582, Name: 변손권
ID: m02a6484, Name: 천범병
ID: ethfv925, Name: 석반잎
ID: azmjt392, Name: 함흔초
ID: voh6l137, Name: 노강탐
ID: yw1d6138, Name: 진담상
ID: k4sl7171, Name: 용헌누
ID: qc4ar207, Name: 신빛추
'백엔드' 카테고리의 다른 글
Mysql CAST/CONVERT 문자, 숫자, 날짜 형 변환하기 (0) | 2022.03.02 |
---|---|
[groovy] string, Map, json 타입 변경 (0) | 2022.02.25 |
Groovy 시간 Date() 함수 format (0) | 2022.02.23 |
Jira와 크라우드(Crowd) Rest Api 연동 개발 (0) | 2022.02.23 |
[JAVA] hashMap key값으로 value 찾기 value로 key값 찾기 (0) | 2022.02.23 |