复制代码代码如下:
importar com.google.common.base.charsets;
importar com.google.common.hash.hashing;
importar java.util.date;
importar org.apache.commons.lang.time.fastdateFormat;
/**
*
* @Author Charles
*/
classe pública Tokenutils {
String final estática privada privateKey = "fdas34ljfr 好 sja@#8 $%dfkl; js & 4*Daklfjsdl; akfjsa342";
public static string getToken (senha da string, data string) {
retorno hashing.md5 (). newhasher ().
putstring (senha, charsets.utf_8).
putstring (privateKey, charsets.utf_8).
putstring (data, charsets.utf_8) .hash (). tostring ();
}
public static string getToken (senha da string, data de data) {
retorno hashing.md5 (). newhasher ().
putstring (senha, charsets.utf_8).
putstring (privateKey, charsets.utf_8).
putstring (getDate (data), charsets.utf_8) .hash (). tostring ();
}
public static string getToken (senha da string) {
retorno hashing.md5 (). newhasher ().
putstring (senha, charsets.utf_8).
putstring (privateKey, charsets.utf_8) .putString (getDate (), charsets.utf_8) .hash (). tostring ();
}
public static boolean validToken (string token, string senha) {
String confirm = getToken (senha);
if (confirm.equals (token)) {
retornar true;
} outro {
retornar falso;
}
}
public static string getDate () {
Data da data = nova data (System.CurrentTimemillis ());
Return fastDateFormat.getInstance ("yyyymmddhh"). formato (data);
}
public static string getDate (data agora) {
Return fastDateFormat.getInstance ("yyyymmddhh"). formato (agora);
}
public static string getNexthour (data agora) {
Data data = nova data (agora.getTime ()+60*60*1000);
Return fastDateFormat.getInstance ("yyyymmddhh"). formato (data);
}
}