因此,通過幾個基於Java的Web應用程序,我在絕大多數Web應用程序中意識到了一個共同點。他們中的大多數往往運行良好,直到你面對面與Null Pointer Exception.
下面是該返回錯誤的方法之一:
處理空指針異常
public Map getWebSiteObjects(String path, LightWeightNode root, Integer versionId, Site site) {
Map webSiteObjects = new HashMap();
// refresh site
site = (Site)getObject(Site.class, site.getId());
webSiteObjects.put("site", site); ...... /* Dont worry about the rest */
方案:此方法在我的應用程序生成的樹,但是,它的在運行時給一個空指針異常:
2014-10-09 12:00:18,674 ERROR org.springframework.web.servlet.DispatcherServlet - Could not complete request
java.lang.NullPointerException at com.bsdeurope.xmlcms.service.impl.TreeManagerImpl.getWebSiteObjects(TreeManagerImpl.java:159)
現在我有一些Java校長(基本面)和我的想法來解決這個很新是初始化4個變量的方法傳遞,因此有:
path = null;
root =null;
versionId = null;
site = null;
之前getWebSiteObjects
方法中的任何指令。現在我知道這可能不是唯一的解決方案,但我的問題是:
1)什麼是防止Java的好方法Null Pointer Exceptions
?
2)如果有一個過程,你會怎麼做呢?
通常,當您處理很多類時,尤其是那些代碼寫得很糟糕的應用程序時,當您在左側,右側和中間出現大量空指針異常時,最終會碰撞牆。
一個Java開發誰不處理或得到NPE就像一條沒有水的魚。這是一個非常廣泛的問題,可以有多種解決方案和建議。我建議你在繼續之前閱讀異常處理,特別是NPE處理。 – vikeng21 2014-10-09 11:30:54