Time of Update: 2015-08-20
標籤:最近每天上班下班有點時間看下 Effective Java。我一般看看原文,在看看範例程式碼,再想想原文的意思。我英文也不是很好,所以決定中文英文隨便用. Creating and destroying objectsItem 1: Consider static factory methods instead of constructors Advantage of static factory methods1.Unlike
Time of Update: 2015-08-21
標籤:map// Map --> Bean 2: 利用org.apache.commons.beanutils 工具類實現 Map --> Bean public static void transMap2Bean2(Map<String, Object> map,
Time of Update: 2015-08-20
標籤:單例模式是23種設計模式中的一種,關於它的介紹,已經數不勝數了,一般網上的實現方式無非是什麼懶漢式,餓漢式,內部類,枚舉,volatile加雙重校正鎖等等,今天我又想到一個新的實現方式,利用J.U.C提供的原子類,代碼如下:class SingleTon { private static AtomicReference<SingleTon> reference = new AtomicReference<>(); private SingleTon()
Time of Update: 2015-08-21
標籤: 1 import java.util.Enumeration; 2 import java.util.Properties; 3 4 public class Example609 { 5 public static void main(String[] args) { 6 // TODO Auto-generated method stub 7 Properties properties = System.getProperties(); 8
Time of Update: 2015-08-21
標籤:1、日期轉換成String格式化輸出:1 public String getDate() {2 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");3 Date date = new Date();4 String day = format.format(date);5 return day;6 }2、String類型轉化成日期 1 public
Time of Update: 2015-08-21
標籤:面試題今天七夕節,苦逼的我還在寫網頁看面試題。。。早點看完睡覺拜拜啊 開始吧1.forward 和 redirect 的區別答: forward是伺服器請求資源,伺服器直接存取目標地址的URL,把那個URL的響應內容讀取過來,然後把這些內容再發給瀏覽器,瀏覽器根本不知道伺服器發送的內容是從哪兒來的,所以它的地址欄中還是原來的地址。
Time of Update: 2015-08-21
標籤:java設計模式 單例模式 原廠模式 值對象模式 裝飾模式 前言:設計模式(Design pattern)是一套被反覆使用、多數人知曉的、經過分類編目的、代碼設計經驗的總結。用於解決特定環境下、重複出現的特定問題的解決方案。使用設計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。
Time of Update: 2015-08-20
標籤:binarytreepaths leetcode java 深度優先 題目:Given a binary tree, return all root-to-leaf paths.For example, given the following binary tree: 1 / 2 3 5All root-to-leaf paths
Time of Update: 2015-08-20
標籤:在Servlet使用getServletContext()擷取ServletContext對象出現java.lang.NullPointerException(null 指標)異常的解決辦法 今天遇到了一個在servlet的service方法中擷取ServletContext對象出現java.lang.NullPointerException(null 指標)異常,代碼如下:1 //擷取ServletContext對象2 ServletContext servletContext =
Time of Update: 2015-08-21
標籤:在 java 語言中, 用來處理字串的的類常用的有 3 個: String、StringBuffer、StringBuilder。它們的異同點:1) 都是 final 類, 都不允許被繼承;2) String 長度是不可變的, StringBuffer、StringBuilder 長度是可變的;3) StringBuffer 是安全執行緒的, StringBuilder
Time of Update: 2015-08-21
標籤:閱讀本文的讀者,需要對Java輕量級鎖有一定的瞭解,知道lock record, mark word之類的名詞。可以參考我的一篇博文:Java輕量級鎖原理詳解(Lightweight Locking)Java偏向鎖(Biased
Time of Update: 2015-08-21
標籤: java虛擬機器是通過記憶體回收的方式進行記憶體回收的,C/C++可以通過代碼控制記憶體釋放,防止記憶體泄露,設定不同的記憶體回收方式和參數都會影響記憶體回收的效果,而這對系統的穩定性及單機的支撐能力方面。 jvm指令集裡面沒有提供記憶體回收的釋放操作,所以不能直接釋放記憶體,而要專門的記憶體回收行程來完成記憶體回收的工作。 不同的記憶體回收行程產品有不同的回收策略,先來看Oracle Hotspot
Time of Update: 2015-08-20
標籤:1.首先下載json所以依賴的包, Json-lib 最新版 json-lib-2.3-jdk15.jar,其官方網站是:http://json-lib.sourceforge.net/可以直接download,細心的你會發現其網站頁面裡面有提示它還需要其他包: Json-lib requires (at least) the following dependencies in your classpath: •jakarta commons-lang 2.4
Time of Update: 2015-08-20
標籤:一、抽象類別 用abstract關鍵字修飾的類叫抽象類別;用abstract修飾的方法叫抽象方法。 抽象方法必須為public或protected的,預設為public。 含有抽象方法的類必須被聲明為抽象類別,抽象類別必須被繼承,抽象方法必須被重寫 抽象類別不能被執行個體化 抽象方法只需聲明,而不需實現 二、介面 定義: 介面(interface)是抽象方法和常量值定義的集合。 從本質上講,介面是一種特殊的抽象類別,這種抽象類別中只包含常量和方法的定義,而沒有變數
Time of Update: 2015-08-19
標籤:jvisualvm能幹什麼:監控記憶體泄露,跟蹤記憶體回收,執行時記憶體、cpu分析,線程分析... jvisualvm已經被整合在jdk1.6以上的版本中(不是jre)。自身運行需要最低jdk1.6版本,但是可以監控運行在jdk1.4以上版本的java程式以jdk1.6update45(jdk1.6update45內建的jvisualvm)來做說明,當然也可單獨下載獨立的jvisualvm,正常安裝完jdk後,至jdk的bin目錄下,運行jvisualvm.exe即可網上有人說
Time of Update: 2015-08-19
標籤: 1:包的命名規範應當體現出項目資源良好的劃分servlet類所在包命名規範:公司名稱.開發組名稱.項目名稱.web.servlet例如:net.linkcn.web.servlet自訂標籤類所在包命名規範:公司名稱.開發組名稱.項目名稱.web.tags例如:net.linkcn.web.tags過濾器類所在包命名規範:公司名稱.開發組名稱.項目名稱.web.filter例如:net.linkcn.web.filterAction類所在包命名規範:公司名稱.開發組名稱.項目名稱.web.
Time of Update: 2015-08-18
標籤:全排列組合 java 遞迴實現 m個數中(1)全排列組合的遞迴規律:集合s的全排列組合 all(s)=n+all(s-n);其中n為已經取出的集合以集合 s={1,2,3}為例,則s的全排列組合為all(s)={1}+all({2,3});其中n={1},s-n={2,3}通過以上例子,我們可以知道上述演算法可以用遞迴來解決。我們取極端情況,如果集合s為空白,那麼說明不需要再進行遞迴。全排列組合,如果集合有4個元素,則全排列組合的個數為
Time of Update: 2015-08-19
標籤:java 多線程 線程 轉載請註明出處:http://blog.csdn.net/xingjiarong/article/details/47417383 在上一篇部落格中,我們學會了用ReentrantLock來控制線程訪問同一個資料,防止出現Race
Time of Update: 2015-08-19
標籤:java thread 多線程基礎 背景 Java採用多線程方式實現並行計算,當然並行計算也可以採用多進程方式實現,但是進程切換耗費比較高。而且進程間是隔離的,處理序間通訊機制比較麻煩,最後JVM本身在作業系統中就一個進程,由它再啟動一個進程不太合適,所以Java採用多線程方式實現並行計算。
Time of Update: 2015-08-19
標籤:java 多線程 java多線程中提供的鎖:synchronized和lock。(一)synchronized1、synchronized的使用每個對象都內建鎖,鎖可以同步執行個體方法(this是對象鎖)、靜態方法(class是對象鎖)、方法塊(synchronized參數是對象鎖)下面是鎖住執行個體方法:public synchronized void add(){ a++;