原创 Struts2:Action中result的各種轉發類型

 源碼下載地址:http://download.csdn.net/detail/zhoujing_0424/9239429    Struts2的核心配置文件struts.xml的基本格式爲: <struts> <package nam

原创 Java基礎:多線程之線程範圍內的數據共享ThreadLocal

       問題:實現線程範圍內的數據共享,即每個線程只能訪問它自己的數據,不能訪問其他線程的數據。具體邏輯如下圖所示: 1.方法一:使用Map<線程Thread,數據類型DataType> 使用Map<線程Thread,

原创 Java基礎:多線程下的單例模式

       單例對象(Singleton)是一種常用的設計模式。在Java應用中,單例對象能保證在一個JVM中,該對象只有一個實例存在。但在多線程環境下,就可能會產生問題,並不一定能保證只有一個實例。具體問題描述和解決方法如下。

原创 Java基礎:多線程之線程創建的兩種方式

創建線程有兩種方式: 1. 繼承Thread類,覆寫run方法; 2. 實現Runnable接口,將任務代碼封裝到run方法中。 1.繼承Thread類創建線程 public class MyThread extends Th

原创 Java併發編程:volatile關鍵字解析

Java併發編程:volatile關鍵字解析    volatile這個關鍵字可能很多朋友都聽說過,或許也都用過。在Java 5之前,它是一個備受爭議的關鍵字,因爲在程序中使用它往往會導致出人意料的結果。在Java 5之

原创 Docker源碼分析三:啓動Docker Daemon

Docker源碼分析三:啓動Docker Daemon Docker Daemon是Docker架構中運行在後臺的守護進程,大致可以分爲Docker Server、Engine和Job部分。三者的關係大致如下:Docker Daemon

原创 設計模式之Bridge Pattern

本文轉載自:http://blog.csdn.net/yangzl2008/article/details/7670996 一、橋接模式的內容 橋接模式(Bridge Pattern):將抽象部分與它的實現部分分離,使它們都可以獨立地變

原创 Java 刪除ArrayList中指定元素

ArrayList是最常用的一種java集合,在開發中我們常常需要從ArrayList中刪除特定元素。有幾種常用的方法: 最樸實的方法,使用下標的方式 高級循環的方式 迭代器方式 1.最樸實的方法,使用下標的方式 ArrayList

原创 哈希表和完美哈希

我們知道,通過對數組進行直接尋址(Direct Addressing),可以在 O(1) 時間內訪問數組中的任意元素。所以,如果存儲空間允許,可以提供一個數組,爲每個可能的關鍵字保留一個位置,就可以應用直接尋址技術。 哈希表(Hash

原创 虛擬機類加載機制

一、類加載的時機 1. 類加載的 生命週期 :加載(Loading)-->驗證(Verification)-->準備(Preparation)-->解析(Resolution)-->初始化(Initialization)-->使

原创 Java8 十大新特性

本教程將用帶註釋的簡單代碼來描述新特性,你將看不到大片嚇人的文字。 一、接口的默認方法Java 8允許我們給接口添加一個非抽象的方法實現,只需要使用 default關鍵字即可,這個特徵又叫做擴展方法,示例如下: 複製代碼代碼如下:

原创 assert用法

1.簡介 assertion(斷言)在軟件開發中是一種常用的調試方式,assertion就是在程序中的一條語句,它對一個boolean表達式進行檢查,一個正確程序必須保證這個boolean表達式的值爲true;如果該值爲false,說明程

原创 Python學習筆記2:函數式編程

    在上一篇博客中,我們學習了以下內容:Python的安裝環境;變量和數據類型(Python內置的基本類型);List和Tuple(順序的集合類型);條件判斷和循環(控制程序流程);Dict和Set(根據key訪問的集合類型);函數(

原创 ProcessBuilder

1. 簡介 ProcessBuilder類是J2SE 1.5在java.lang中新添加的一個新類,此類用於創建操作系統進程,它提供一種啓動和管理進程(也就是應用程序)的方法。在J2SE 1.5之前,都是由Process類處來實現進程的控

原创 JConsole、VisualVM檢測死鎖

1.死鎖示例: package com.lesson1; public class TestDeadLock implements Runnable{ /** * @param args */ publ