Heim > Fragen und Antworten > Hauptteil
1. Der aus der Datenbank erhaltene Zeitstempel ist vom Typ String. Er muss mit der aktuellen Zeit verglichen werden, um festzustellen, ob die Anmeldung abgelaufen ist.
Erzeugen Sie die aktuelle Zeit vom Typ „Lang“, und melden Sie sie an Fehler. Der Code lautet wie folgt:
long currentTime = System.currentTimeMillis(); //当前时间
// System.out.println("currentTime" + currentTime);
long expireTime = Long.parseLong(token1.getExpireTime()); //过期时间
// System.out.println("expireTime : " + expireTime);
Die Fehlermeldung lautet wie folgt:
java.lang.NumberFormatException: For input string: "1496733869286 "
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Long.parseLong(Long.java:589)
at java.lang.Long.parseLong(Long.java:631)
at com.tustcs.matrix.util.Interceptor.preHandle(Interceptor.java:45)
at org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:134)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:954)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
2. Es wurde festgestellt, dass die aktuelle Zeitausgabe der Konsole falsch ist
3. Der Test ist wie folgt:
4. Die Datenbankinformationen lauten wie folgt:
给我你的怀抱2017-06-12 09:29:09
java.lang.NumberFormatException: For input string: "1496733869286 "
你看你后面有一个空格。
PS. 你这个也不叫做“String类型强制转换成long类型报错”,概念错误了