app令牌的一个token实现
app登陆验证不能使用session来判断了。然后查资料都说用令牌,没找到合适的方法,我的眼界太小。另外,越来越感觉基础的重要,比如,session是什么,我竟无言以对。不知道session是什么,怎么来做验证呢。然后就关于类的加载和销毁,等。我需要重新看下java基础了。
这里,我定义了一个token类来存储token。就是一个字符串+创建的时间戳。然后定义一个管理类来维护token。简单的实现了,但还有很多问题。比如,我对session的理解(是否可以放session,放session之后什么状态),比如这定义的这个类在调用的时候加载,在不用的时间结束,而我希望一直存在,这个维护类怎么确保存在,这是类的声明周期问题,比如加载到内存和缓存的实现,缓存用的太少。
1 package ;
2
3 import ;
4
5 public class Token implements Serializable {
6
7 /**
8 * ***@Fields serialVersionUID : TODO
9 */
10 private static final long serialVersionUID = -754659525548951914L;
11 private String signature;
12 private long timestamp;
13
14 public Token(String signature, long timestamp) {
15 if (signature == null)
16 throw new IllegalArgumentException("signature can not be null");
17
18 = timestamp;
19 = signature;
20 }
21
22 public Token(String signature) {
23 if (signature == null)
24 throw new IllegalArgumentException("signature can not be null");
25
26 = signature;
27 }
28
29 /**
30 * Returns a string containing the unique signatureentifier assigned to this token.
31 */
32 public String getSignature() {
33 return signature;
34 }
35
36 public long getTimestamp() {
37 return timestamp;
38 }
39
40 /**
41 * timestamp 不予考虑, 因为就算 timestamp 不同也认为是相同的 token.
42 */
43 public int hashCode() {
44 return ();
45 }
46
47 public boolean equals(Object object) {
48 if (object instanceof Token)
49 return ((Token)object).();
50 return false;
51 }
52
53 ***@Override
54 public String toString() {
55 return "Token [sign
app令牌的一个token实现 来自淘豆网m.daumloan.com转载请标明出处.