java.lang.NullPointerException
Servlet.LoginServlet.doPost(LoginServlet.java:43)
javax.servlet.http.HttpServlet.service(HttpServlet.java:660)

javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
uj5u.com熱心網友回復:

43行沒錯呀
uj5u.com熱心網友回復:
eclipse 里面有個功能叫debuguj5u.com熱心網友回復:
服務器錯誤。uj5u.com熱心網友回復:
String name = request.getParameter("userName")!=null?request.getParameter("userName"):"";String name = request.getParameter("pwd")!=null?request.getParameter("pwd"):"";
把上面2行替換成這個試試
uj5u.com熱心網友回復:
判空可以試試(null == name || "".equals(name))uj5u.com熱心網友回復:
使用 StringUtils.isBank(name)
uj5u.com熱心網友回復:
request.getParameter回傳本來就可能是空,name和pwd有可能是null,用null.isEmpty()肯定報空指標例外最好使用StringUtils.isBank(name)判null || 空字串
uj5u.com熱心網友回復:
拼錯了 StringUtils.isBlank
commons包里的
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.8.1</version>
</dependency>
uj5u.com熱心網友回復:
name.isEmpty()直接null==name來判斷。
uj5u.com熱心網友回復:
name 或者 pwd為null導致的,一般判斷字串為空要這么寫 name!=null && !name.isEmpty(),通常都會使用commons-lang中的StringUtils.isNotBlank來判斷uj5u.com熱心網友回復:
StringUtils.isEmpty(name)||StringUtils.isEmpty(pwd)試試uj5u.com熱心網友回復:
/*** Returns {@code true} if, and only if, {@link #length()} is {@code 0}.
*
* @return {@code true} if {@link #length()} is {@code 0}, otherwise
* {@code false}
*
* @since 1.6
*/
public boolean isEmpty() {
return value.length == 0;
}
用之前要知道isEmpty原始碼是怎么實作的,如果你的值未傳入時,那么值是null的話是不是抱空指標啦。null怎么會有length呢???所以你要先判斷其是不是空,不是空的時候再去判斷isEmpty
uj5u.com熱心網友回復:
當然使用StringUtils的isEmpty好像是沒有問題的。因為原始碼如下:public static boolean isEmpty(CharSequence cs) {
return cs == null || cs.length() == 0;
}
它判斷null啦
所以你也可以改成StringUtils.isEmpty(name)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/95985.html
標籤:Web 開發
上一篇:SSH框架如何實作分頁
下一篇:java題 求大神
