复制代码代码如下:
import com.google.common.base.charsets;
import com.google.common.hash.hashing;
Importer java.util.date;
import org.apache.commons.lang.time.fastDateFormat;
/ **
*
* @author Charles
* /
classe publique tokenutils {
String final statique privé privateKey = "fdas34ljfr 好 sja @ # 8 $% dfkl; js & 4 * daklfjsdl; akfjsa342";
String statique public getToken (mot de passe de chaîne, date de chaîne) {
return hashing.md5 (). newhasher ().
putString (mot de passe, charsets.utf_8).
putString (privateKey, charsets.utf_8).
putString (date, charsets.utf_8) .hash (). toString ();
}
String statique public getToken (mot de passe de chaîne, date de date) {
return hashing.md5 (). newhasher ().
putString (mot de passe, charsets.utf_8).
putString (privateKey, charsets.utf_8).
putString (getDate (date), charsets.utf_8) .hash (). toString ();
}
String statique public getToken (mot de passe de chaîne) {
return hashing.md5 (). newhasher ().
putString (mot de passe, charsets.utf_8).
putString (privatekey, charsets.utf_8) .putString (getDate (), charsets.utf_8) .hash (). toString ();
}
public statique booléen validtoken (jeton de chaîne, mot de passe de chaîne) {
String confirm = getToken (mot de passe);
if (confirm.equals (token)) {
Retour Vrai;
} autre {
retourne false;
}
}
public static String getDate () {
Date Date = Nouvelle date (System.CurrentTimeMillis ());
return fastDateFormat.getInstance ("yyyymmddhh"). Format (date);
}
String statique public GetDate (date maintenant) {
return fastDateFormat.getInstance ("yyyymmddhh"). format (maintenant);
}
chaîne statique publique getNExthour (date maintenant) {
DATE DATE = NOUVELLE DATE (NOW.GetTime () + 60 * 60 * 1000);
return fastDateFormat.getInstance ("yyyymmddhh"). Format (date);
}
}