블로그 이미지
래머
오늘도 열심히 개발하는 개발자입니다.

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

2014. 6. 4. 08:52 Java

자바 UUID는 다음과 같이 생성할 수 있다.





1
2
3
4
5
6
7
8
9
import java.util.UUID;
 
public class CGenUUID
{
    public static String GetUUID()
    {
        return UUID.randomUUID().toString();
    }
}


posted by 래머
2014. 6. 3. 08:19 Java

아파치 common라이브러리를 이용해서 랜덤 문자열 생성하기


import org.apache.commons.lang3.RandomStringUtils;


RandomStringUtils.random을 사용해서 간단하게 문자열 생성이 가능하다.


String strRandomString = RandomStringUtils.random(length, true, true);


첫번째인자는 생성될 문자열의 길이

두번째인자는 문자열생성시 알파벳을 포함할지

세번째 인자는 문자열생성시 숫자를 포함시킬지

를 나타낸다.


RandomStringUtils을 사용하기 위해서는 다음라이브러리를 프로젝트에 포함시켜야한다.



commons-lang3-3.3.2-bin.zip




posted by 래머
2014. 5. 16. 01:00 Java

웹통신시 간단하게 암호화 처리를 위해서 자바에서 제공하는 랜덤 문자열 생성 함수가 있는지 잠시 찾아보니

없는것 같아(오래찾아보지 않아서 있는지 없는지 모르겠다) 고민하던 중 자바의 기본 Math.random() 함수를 약간 응용하여 간단하게 랜덤문자열을

생성 할 수 있는 클래스를 만들어보았다.

기본 힌트는 


1. 랜덤함수로 임의의 숫자를 생성하고

2. 해당 숫자를 문자열로 바꾼다음에

3. 해당 문자를 다시 base64로 인코딩 하는것이다.


아래는 유틸클래스이 전체 내용이다.

base64인코딩/디코딩 관련한 클래스는 구글 안드로이드 IAP예제에서 제공되는 Base64클래스를 가져다 사용했다. 해당 클래스 파일을 첨부해놓는다.


package com.util.crypt; 

import java.io.UnsupportedEncodingException; 

import com.util.base64.Base64; 

public class CRandomUtil { 
     
    //랜덤 양의 정수값 생성 
    public static int GetInt(int max) 
    { 
        return (int)(Math.random() * max); 
    } 
     
    //랜덤 0 ~ 1사이의 양의 실수값 생성 
    public static float GetFloat() 
    { 
        return (float)Math.random(); 
    } 
     
    //랜덤 -1 ~ 1사이의 실수값 생성 
    public static float GetUnit() 
    { 
        return ((float)Math.random() * 2.0f) - 1.0f; 
    } 
     
    //랜덤 스트링 생성 
    public static String GetString() throws UnsupportedEncodingException 
    { 

             //여기에서 생성하는 정수의 값이 클수록 긴 랜덤 문자열이 만들어진다
        int val = GetInt(500000); 
         
        String sv = String.valueOf(val); 
         
        return Base64.encode(sv.getBytes("utf-8")); 
    } 
     
    //랜덤 스트링 생성(웹전송용) 
    public static String GetStringWebSafe() throws UnsupportedEncodingException
    { 
        int val = GetInt(500000); 
         
        String sv = String.valueOf(val); 
         
        return Base64.encodeWebSafe(sv.getBytes("utf-8"), true); 
    } 
}


첨부 파일의 패키지명등을 적절하게 변경하지 않으면 오류가 날것이다.

base64.zip





'Java' 카테고리의 다른 글

자바 UUID 생성하기  (0) 2014.06.04
자바 랜덤문자열 생성  (0) 2014.06.03
posted by 래머
prev 1 next