复制代码代码如下:
import com.google.common.base.charsets;
import com.google.common.hash.hashing;
import java.util.date;
importar org.apache.commons.lang.time.fastdateFormat;
/**
*
* @author Charles
*/
Tokenutils de clase pública {
Cadena final estática privada PrivateKey = "FDAS34LJFR 好 SJA@#8 $%DFKL; JS & 4*DAKLFJSDL; AKFJSA342";
public static string getToken (contraseña de cadena, fecha de cadena) {
return Hashing.md5 (). Newhasher ().
PutString (contraseña, charsets.utf_8).
PutString (PrivateKey, Charsets.utf_8).
PutString (fecha, charsets.utf_8) .hash (). toString ();
}
public static string getToken (contraseña de cadena, fecha de fecha) {
return Hashing.md5 (). Newhasher ().
PutString (contraseña, charsets.utf_8).
PutString (PrivateKey, Charsets.utf_8).
PutString (getDate (fecha), charsets.utf_8) .hash (). toString ();
}
public static string getToken (contraseña de cadena) {
return Hashing.md5 (). Newhasher ().
PutString (contraseña, charsets.utf_8).
PutString (privateKey, charsets.utf_8) .putString (getDate (), charsets.utf_8) .hash (). toString ();
}
public static boolean validToken (token de cadena, contraseña de cadena) {
Cadena confirm = getToken (contraseña);
if (confirmar.equals (token)) {
devolver verdadero;
} demás {
devolver falso;
}
}
public static string getDate () {
Fecha fecha = nueva fecha (System.CurrentTimemillis ());
return fastDateFormat.getInstance ("yyyymmddhh"). format (fecha);
}
public static string getDate (fecha ahora) {
return fastDateFormat.getInstance ("yyyymmddhh"). format (ahora);
}
public static string getNexThour (fecha ahora) {
Fecha fecha = nueva fecha (ahora.gettime ()+60*60*1000);
return fastDateFormat.getInstance ("yyyymmddhh"). format (fecha);
}
}