由於網站中一些404page的壞網頁的存在,導致爬蟲有時候走不下去的情況,很自然就想到,try catch。
但是今天早上搞了這麼久,才發現異常捕獲也是有一定的講究的。
這裏如果函數的調用有多層,那麼如何把最下面一層中產生的異常交給最上面一層?
注意,最下面一層不可以用try catch,應該用throws交給上一層的函數。否則下面的一層在沒有獲取到結果時就想要繼續進行,而異常又不能被上一層的函數捕獲,這樣外層的try catch 就起不到作用。
由於網站中一些404page的壞網頁的存在,導致爬蟲有時候走不下去的情況,很自然就想到,try catch。
但是今天早上搞了這麼久,才發現異常捕獲也是有一定的講究的。
這裏如果函數的調用有多層,那麼如何把最下面一層中產生的異常交給最上面一層?
注意,最下面一層不可以用try catch,應該用throws交給上一層的函數。否則下面的一層在沒有獲取到結果時就想要繼續進行,而異常又不能被上一層的函數捕獲,這樣外層的try catch 就起不到作用。
ThreadLocal的使用,,,實際上相當於維護了一個Map,其中以鍵值對的形式,存儲了某一個數據被多個線程訪問所對應的值。當然這個數據只能有
JSONArray序列化日期最初用到, 這個是全局設置,會有風險。 String[] dateFormats = new String[] {"yyyyMMdd"}; JSONUtils.getM