原创 線程與多線程(一)——線程概述

一、線程概述        計算機的操作系統多采用彩任務和分時設計,多任務是指在一個操作系統中可以同時運行多個程序,例如,可以在使用qq聊天的同時聽音樂,即有多個獨立運行的任務,每個任務對應一個進程,每個進程又可產生多個線程。 1.1進程

原创 java文件下載中Content-disposition的定義

        Content-disposition 是 MIME 協議的擴展,MIME 協議指示 MIME 用戶代理如何顯示附加的文件。當 Internet Explorer 接收到頭時,它會激活文件下載對話框,它的文件名框自動填充

原创 HTTP訪問過程原理解析

1、在瀏覽器中輸入www.qq.com域名,操作系統會先檢查自己本地的hosts文件是否有這個網址映射關係,如果有,就先調用這個IP地址映射,完成域名解析。 2、如果hosts裏沒有這個域名的映射,則查找本地DNS解析器緩存,是否有這個網

原创 Java動態代理源碼詳解

一、概述   前言:本文除了講解JDK動態代理及CGLIB動態代理實例和應用外,還會講解JDK動態代理源碼實現過程以及自己寫一手個JDK動態代理等。   動態代理在很多底層框架中都會用得到,比如在Spring中用到的動態代理。它

原创 addEventListener和on的區別

爲什麼需要addEventListener?先來看一段html代碼:<div id="box">我是DIV</div>1、用on的代碼。window.onload = function(){ var box = document.

原创 JSP中getAttribute和getParameter的不同

1.request  中對屬性的操作,如果要使用 getAttribute( ) ,則之前一定要有setAttribute()的操作,否則無法取得。 2.使用 getParameter ( ) 則表示接收參數,參數的來源有:(1)表單

原创 tomcat配置多域名訪問多項目

1、兩個項目,第一個爲Apache-tomcat的默認項目ROOT,第二個項目名爲applet。2、修改tomcat的server.xml文件,原來的代碼如下,其中Host標籤的appBase表示這個目錄下面的子目錄將自動被部署爲應用。n

原创 java中getRealPath("/")和getContextPath()的區別

一.以下是在servlet中測試的。 二.運行結果如下(其中myfile文件夾是不存在的)。 三.總結。 1.getRealPath("/")方法返回的是項目在服務器的絕對路徑,而getRealPath("WEB-INF/myfile"

原创 SLF4J和Logback和Log4j和Logging的區別與聯繫

前言        Java帝國在誕生之初就提供了集合、線程、IO、網絡等常用功能,從C和C++領地那裏吸引了大量程序員過來加盟,但是卻有意無意地忽略了一個重要的功能: 輸出日誌。        對於這一點,IO大臣其實非常清楚, 日誌是

原创 CPU結構及工作過程

       中央處理器(CPU,Central Processing Unit)是一塊超大規模的集成電路,是一臺計算機的運算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計算機指令以及處理計算機軟件中的數據

原创 線程與多線程(二)——java實現多線程

二、 在Java中實現多線程        每個程序至少自動擁有一個線程,稱爲主線程。當程序加載到內存時,啓動主線程。Java 程序中的public static void main( )方法是主線程的人口,運行Java程序時,會先執行這

原创 Java字節碼文件和二進制文件的區別與聯繫

1、class文件:裏面存放了許多16進制的字節(碼)(如二進制字節碼可表示爲:010101101),如下圖所示;但是這個文件,是二進制的,例如圖形文件等都屬於二進制文件。                                 

原创 Java中String創建對象過程及其運算原理

一、String類的常見問題解析 1.1、new String(“hello”)創建了幾個對象   不考慮其他因素,String b = new String("hello");這行代碼到底創建了幾個對象?   情況一,創建了一個對象

原创 Mybatis中#{}和${}的區別

一、結論   #{}:佔位符號,好處是防止sql注入。   ${}:sql拼接符號。 二、具體分析   動態 SQL 是 mybatis 的強大特性之一,也是它優於其他 ORM 框架的一個重要原因。mybatis 在對 sql 語句進

原创 Maven中指定Java的編譯版本和源文件編碼方式

Maven默認編譯版本是JDK1.5,在很多時候,發現有些代碼報錯,又找不到原因,很有可能是沒有配置JDK版本。就如有一次我遇到的問題:定義全局異常處理類繼承HandlerInterceptorAdapter時候,preHandle方法上