05 2007 檔案
struts中的session對(duì)象創(chuàng)建和控制
摘要: 大家知道struts的ActionServlet類中在接收到我們客戶端的請(qǐng)求(*.do)后(之前會(huì)做一系列初始化工作),并不是直接去處理我們的請(qǐng)求并調(diào)用相應(yīng)的Action(我們寫的如IndexAction),而是將處理工作交給RequestProcessor類,其process方法中會(huì)調(diào)用一系列的方法來完成相應(yīng)的請(qǐng)求處理和轉(zhuǎn)向操作.其中有一個(gè)方法引起了我的關(guān)注,就是processLocale()方法.
閱讀全文
對(duì)session和cookie的一些理解
摘要: 由于項(xiàng)目需要,最近用session容器比較多,傳載的同時(shí)加上了自己的一些理解,不足之處還請(qǐng)大家補(bǔ)充和糾正。
調(diào)試時(shí)遇到一個(gè)問題,有點(diǎn)不解,關(guān)于tomcat的sessionId重寫URL。
閱讀全文
BaseAction的java多態(tài)思考
摘要: 對(duì)于struts框架,我們都知道我們寫的*Action類是繼承struts的Action(org.apache.struts.action.Action)類,并重寫其定義的execute方法,進(jìn)而來實(shí)現(xiàn)我們自己的業(yè)務(wù)邏輯。
閱讀全文
Struts+Hibernate實(shí)現(xiàn)shopcart
摘要: 最近在做畢設(shè),將自己以前寫的一個(gè)購(gòu)物車的模塊重構(gòu)了一遍,將一些bug進(jìn)行了修復(fù)。實(shí)現(xiàn)了對(duì)hashmap容器的基本CRUD功能。在這里和大家一起分享下,希望大家提出更好意見和想法。
閱讀全文
Tomcat目錄結(jié)構(gòu)
摘要: 隨著java的流行,其在web上的應(yīng)用也越來越廣,tomcat作為一個(gè)開源的servlet容器,應(yīng)用前景越來越廣,本文將向你講述tomcat的一些知識(shí)。
閱讀全文
Tomcat啟動(dòng)分析
摘要: 1 - Tomcat Server的組成部分
1.1 - Server
A Server element represents the entire Catalina servlet container. (Singleton)
閱讀全文
POP3/SMTP指令
摘要: SMTP:簡(jiǎn)單郵件傳輸協(xié)議
(SMTP:Simple Mail Transfer Protocol)
SMTP 是一種提供可靠且有效電子郵件傳輸?shù)膮f(xié)議。 SMTP 是建模在 FTP 文件傳輸服務(wù)上的一種郵件服務(wù),主要用于傳輸系統(tǒng)之間的郵件信息并提供來信有關(guān)的通知。
閱讀全文
突破Junit的局限
摘要: “沒有人喜歡bug?!贝蠖鄶?shù)關(guān)于單元測(cè)試的文章以這句話開篇。的確,我們都希望代碼如設(shè)計(jì)的那樣準(zhǔn)確地執(zhí)行,但是就好像叛逆孩子一樣,程序在完成之后產(chǎn)生的行為將難以控制。比那些家長(zhǎng)們幸運(yùn)的是,我們可以運(yùn)用工具以確保程序達(dá)到預(yù)期效果。
閱讀全文
數(shù)據(jù)庫(kù)系統(tǒng)防黑客入侵技術(shù)綜述
摘要: 隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,數(shù)據(jù)庫(kù)的應(yīng)用十分廣泛,深入到各個(gè)領(lǐng)域,但隨之而來產(chǎn)生了數(shù)據(jù)的安全問題。各種應(yīng)用系統(tǒng)的數(shù)據(jù)庫(kù)中大量數(shù)據(jù)的安全問題、敏感數(shù)據(jù)的防竊取和防篡改問題,越來越引起人們的高度重視。數(shù)據(jù)庫(kù)系統(tǒng)作為信息的聚集體,是計(jì)算機(jī)信息系統(tǒng)的核心部件,其安全性至關(guān)重要,關(guān)系到企業(yè)興衰、國(guó)家安全。因此,如何有效地保證數(shù)據(jù)庫(kù)系統(tǒng)的安全,實(shí)現(xiàn)數(shù)據(jù)的保密性、完整性和有效性,已經(jīng)成為業(yè)界人士探索研究的重要課題之一,本文就安全防入侵技術(shù)做簡(jiǎn)要的討論。
閱讀全文
殺毒引擎介紹
摘要: 就象瀏覽器的內(nèi)核主要有四個(gè)一樣,世界上殺毒軟件的引擎也不多,下面?zhèn)€大家介紹一下。先說說反病毒史上的兩位著名人物。
閱讀全文
網(wǎng)絡(luò)安全的16個(gè)基本問題
摘要: 問:什么是網(wǎng)絡(luò)安全?
答:網(wǎng)絡(luò)安全是指網(wǎng)絡(luò)系統(tǒng)的硬件、軟件及其系統(tǒng)中的數(shù)據(jù)受到保護(hù),不因偶然的或者惡意的原因而遭到破壞、更改、泄露,系統(tǒng)可以連續(xù)可靠正常地運(yùn)行,網(wǎng)絡(luò)服務(wù)不被中斷。
閱讀全文
DNS服務(wù)器工作原理
摘要: 分布的信息
解決方案就是采用DNS服務(wù)器系統(tǒng)。與主機(jī)表不一樣,DNS服務(wù)器不依賴一個(gè)大型映射文件,DNS服務(wù)器只包含有限的信息,因?yàn)樗麄冎赖侥睦锬苷业剿麄兿胫赖挠虻募?xì)節(jié)。當(dāng)DNS服務(wù)器得到對(duì)某個(gè)主機(jī)的請(qǐng)求,而該請(qǐng)求的主機(jī)又并不在其緩沖內(nèi),那么DNS服務(wù)器只是知道了這件事然后去詢問知道答案的“某計(jì)算機(jī)”。這臺(tái)計(jì)算機(jī)是一種授權(quán)服務(wù)器,負(fù)責(zé)維護(hù)DNS信息。如果某臺(tái)服務(wù)器在被詢問到其域內(nèi)的某個(gè)地址時(shí)它可以確定地指出該地址存在,那么這臺(tái)服務(wù)器就是所謂的授權(quán)服務(wù)器。
閱讀全文
進(jìn)程秘密
摘要: Windows系統(tǒng)中,當(dāng)一個(gè)程序被運(yùn)行時(shí),就獲得了一個(gè)或多個(gè)進(jìn)程。每個(gè)進(jìn)程系統(tǒng)都會(huì)為其分配一個(gè)ID標(biāo)識(shí),叫做PID。系統(tǒng)給每個(gè)進(jìn)程分配CPU使用時(shí)間和內(nèi)存空間,并協(xié)調(diào)進(jìn)程運(yùn)行。在WindowsXP/2000系統(tǒng)中,通過任務(wù)管理器可以查看系統(tǒng)中有哪些進(jìn)程在運(yùn)行。打開任務(wù)管事器的方式是:在任務(wù)欄空白處點(diǎn)擊右鍵,選 "任務(wù)管理器",或者按Ctrl+Alt+Delete一次,選 任務(wù)管理器。每個(gè)程序的運(yùn)行情況,都會(huì)在任務(wù)管理器中以進(jìn)程的形式表現(xiàn),通過查看進(jìn)程,可以知道哪些程序占用過多的CPU使用空間和內(nèi)存,可以發(fā)現(xiàn)系統(tǒng)中偷偷運(yùn)行的程序,比如病毒或木馬。要想能夠辨識(shí)出病毒或木馬的進(jìn)程,需要對(duì)系統(tǒng)中正常運(yùn)行的進(jìn)程有所了解。
閱讀全文
詳細(xì)了解計(jì)算機(jī)的啟動(dòng)過程
摘要: 1.電腦的啟動(dòng)過程中有一個(gè)非常完善的硬件自檢機(jī)制。對(duì)于采用Award BIOS的電腦來說,它在上電自檢那短暫的幾秒鐘里,就可以完成100多個(gè)檢測(cè)步驟。首先我們先來了解兩個(gè)基本概念:第一個(gè)是BIOS(基本輸入輸出系統(tǒng)),BIOS實(shí)際上是被"固化"在計(jì)算機(jī)硬中、直接與硬件打交道的一組程序,計(jì)算機(jī)的啟動(dòng)過程是在主板BIOS的控制下進(jìn)行的,我們也常把它稱做"系統(tǒng)BIOS"。第二個(gè)基本概念是內(nèi)存地址,通常計(jì)算機(jī)中安裝有32M、64M、或128M等內(nèi)存,
閱讀全文
JDBC常用類和方法
摘要: 一、四種驅(qū)動(dòng)程序概念
A、JDBC-ODBC Bridge
橋接器型的驅(qū)動(dòng)程序,這類驅(qū)動(dòng)程序的特色是必須在使用者端的計(jì)算機(jī)上事先安裝好ODBC驅(qū)動(dòng)程序,然后通過JDBC-ODBC的調(diào)用方法,進(jìn)而通過ODBC來存取數(shù)據(jù)庫(kù)。
閱讀全文
SQLServer中常用SQL語句小結(jié)
摘要: 有關(guān)數(shù)據(jù)庫(kù)的一寫操作:
創(chuàng)建表項(xiàng)就不說了.
CREATE TABLE Student
(Sno CHAR(5) NOT NULL UNIQUE,
Sname CHAR(20),
Ssex CHAR(1),
Sage INT,
Sdept CHAR(15));
閱讀全文
數(shù)據(jù)庫(kù)設(shè)計(jì)中的14個(gè)技巧
摘要: 1. 原始單據(jù)與實(shí)體之間的關(guān)系
可以是一對(duì)一、一對(duì)多、多對(duì)多的關(guān)系。在一般情況下,它們是一對(duì)一的關(guān)系:即一張?jiān)紗螕?jù)對(duì)應(yīng)且只對(duì)應(yīng)一個(gè)實(shí)體。在特殊情況下,它們可能是一對(duì)多或多對(duì)一的關(guān)系,即一張?jiān)紗巫C對(duì)應(yīng)多個(gè)實(shí)體,或多張?jiān)紗巫C對(duì)應(yīng)一個(gè)實(shí)體。這里的實(shí)體可以理解為基本表。明確這種對(duì)應(yīng)關(guān)系后,對(duì)我們?cè)O(shè)計(jì)錄入界面大有好處。
閱讀全文
UML讀書筆記
摘要: 統(tǒng)一建模語言UML 是一種應(yīng)用于任何軟件開發(fā)過程的標(biāo)記法和語義語言。它可以用來描述問題的需求和解決方案,其作用和地位非常類似于結(jié)構(gòu)化程序設(shè)計(jì)中的數(shù)據(jù)分析和數(shù)據(jù)流圖,數(shù)據(jù)流圖實(shí)際上也是一種描述問題和解決方案的語言,所不同的是UML主要采用面向?qū)ο蟮姆绞浇鉀Q問題,而數(shù)據(jù)流圖更適合描述結(jié)構(gòu)化的解決問題方式。
閱讀全文
UML類圖
摘要: 類與類之間的關(guān)系對(duì)于理解面向?qū)ο缶哂泻苤匾淖饔?,以前在面試的時(shí)候也經(jīng)常被問到這個(gè)問題,在這里我就介紹一下。
類與類之間存在以下關(guān)系:
閱讀全文
Spring XML配置的12個(gè)技巧
摘要: Spring是一個(gè)強(qiáng)有力的java程序框架,其被廣泛應(yīng)用于java的程序中。它用POJO提供了企業(yè)級(jí)服務(wù)。Spring利用依賴注入可以獲得簡(jiǎn)單而有效的測(cè)試能力。Spring beans,依賴關(guān)系,以及服務(wù)所需要的bean都將在配置文件中予以描述,配置文件一般采用XML格式。然而XML配置文件冗長(zhǎng)而不易使用,在你進(jìn)行一個(gè)使用了大量bean的大項(xiàng)目中它將變得難以閱讀和控制。
閱讀全文
AOP 面向方面編程
摘要: 在程序員的圈子里面,有一群人數(shù)很少但態(tài)度卻十分堅(jiān)定的開發(fā)人員。當(dāng)他們宣稱,真正的程序員會(huì)編寫自己的驅(qū)動(dòng)程序。
因?yàn)槿绻贿@樣,那么采用任何其他的方式都將會(huì)是瘋狂和缺乏技術(shù)理性的,并且還會(huì)承擔(dān)一些不必要的風(fēng)險(xiǎn)。
閱讀全文
Hibernate實(shí)現(xiàn)CRUD的例子小結(jié)
摘要: 新建立動(dòng)態(tài)工程MyHibernate,首先導(dǎo)入hibernate所需要的jar包。
(1)在src下建立hibernate.cfg.xml:
閱讀全文
Hibernate的原理與配置
摘要: 也許你聽說過Hibernate的大名,但可能一直不了解它,也許你一直渴望使用它進(jìn)行開發(fā),那么本文正是你所需要的!在本文中,我向大家重點(diǎn)介紹Hibernate的核心API調(diào)用庫(kù),并講解一下它的基本配置。
看完本文后,我相信你對(duì)什么是ORM(對(duì)像/關(guān)系映射)以及它的優(yōu)點(diǎn)會(huì)有一個(gè)深刻的認(rèn)識(shí),我們先通過一個(gè)簡(jiǎn)單的例子開始來展現(xiàn)它的威力。
閱讀全文
Hibernate核心接口
摘要: Hibernate的核心接口一共有5個(gè),分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個(gè)核心接口在任何開發(fā)中都會(huì)用到。通過這些接口,不僅可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。下面對(duì)這五的核心接口分別加以介紹
閱讀全文
Hibernate 包的詳解
摘要: Hibernate 包的詳解
Hibernate一共包括了23個(gè)jar包,令人眼花繚亂。本文將詳細(xì)講解Hibernate每個(gè)jar包的作用,便于你在應(yīng)用中根據(jù)自己的需要進(jìn)行取舍
閱讀全文
Strus常見錯(cuò)誤及原因分析
摘要: [轉(zhuǎn)]本篇文章包含了在用Struts開發(fā)web應(yīng)用時(shí)經(jīng)常碰到的一些異常和錯(cuò)誤,根據(jù)異?;蝈e(cuò)誤信息本身,經(jīng)常可以找到潛在的錯(cuò)誤發(fā)生原因。
下面列出了一些Struts的常見錯(cuò)誤和異常,并給出了一些可能發(fā)生此類錯(cuò)誤或異常的原因。有的后面有相關(guān)連接,你可以通過它找到更多的信息。
閱讀全文
struts中的struts-config.xml
摘要: 弄清楚struts-config.xml中各項(xiàng)元素的作用,對(duì)于我們構(gòu)建web項(xiàng)目有莫大的好處。是struts的根元素,它主要有8個(gè)子元素,DTD定義如下:
(data-sources?,form-beans?,global-exceptions?,global-forwards?,action-mappings?,controller?,message-resources*,plug-in*)
閱讀全文
Struts框架初始化分析
摘要: struts 的核心類是org.apache.struts.action.ActionServlet,這個(gè)類將會(huì)在struts第一次使用時(shí),
作為servlet初始化并存入tomcat容器。很顯然的,初始化將會(huì)調(diào)用init方法初始化相應(yīng)的數(shù)據(jù)。
閱讀全文
Struts MVC
摘要: Struts-MVC:
閱讀全文
用Ajax開發(fā)智能Web應(yīng)用程序
摘要: 異步JavaScript+XMLHTTPRequest,并且意味著你可以在基于瀏覽器的JavaScript和服務(wù)器之間建立套接字通訊。其實(shí)AJAX并不是一種新技術(shù),而是已經(jīng)成功地用于現(xiàn)代瀏覽器中的若干成功技術(shù)的可能性組合。所有的AJAX應(yīng)用程序?qū)崿F(xiàn)了一種“豐富的”UI——這是通過JavaScript操作HTML文檔對(duì)象模型并且經(jīng)由XMLHttpRequest實(shí)現(xiàn)的精確定位的數(shù)據(jù)檢索來實(shí)現(xiàn)的。典型的示例AJAX應(yīng)用程序是Google Labs(http://labs.google.com)的Google Maps和Google Suggest。這些應(yīng)用程序現(xiàn)場(chǎng)監(jiān)視用戶輸入并且提供實(shí)時(shí)的頁(yè)面更新。最重要的是,在用戶通過地圖導(dǎo)航或輸入一個(gè)查找字符串的同時(shí),這些事件不需要刷新頁(yè)面。
閱讀全文
Ajax光環(huán)背后的思考
摘要: 自從Jesse James Garrett創(chuàng)造了AJAX這個(gè)名詞,到現(xiàn)在已經(jīng)過去十八個(gè)月了,AJAX幾乎讓W(xué)eb開發(fā)徹底改頭換面。在這一年半的時(shí)間里,發(fā)生了很多事情,包括Web 2.0的熱炒,許多創(chuàng)建或使用富互聯(lián)網(wǎng)技術(shù)公司的誕生或復(fù)蘇,還有真正動(dòng)態(tài)化的在線軟件層出不窮。很明顯,AJAX這個(gè)名詞受到開發(fā)業(yè)界的廣歡迎,已經(jīng)真正的走入到我們生活中,Web應(yīng)用程序也達(dá)到前所未有的發(fā)展。
閱讀全文
四種 XML 解析技術(shù)之不完全測(cè)試
摘要: 測(cè)試環(huán)境:
AMD 毒龍1.4G OC 1.5G、256M DDR333、Windows2000 Server SP4、Sun JDK 1.4.1+Eclipse 2.1+Resin 2.1.8,在 Debug 模式下測(cè)試。
閱讀全文
四種解析xml文件的方式
摘要: DOM 是用與平臺(tái)和語言無關(guān)的方式表示 XML 文檔的官方 W3C 標(biāo)準(zhǔn)。DOM 是以層次結(jié)構(gòu)組織的節(jié)點(diǎn)或信息片斷的集合。這個(gè)層次結(jié)構(gòu)允許開發(fā)人員在樹中尋找特定信息。分析該結(jié)構(gòu)通常需要加載整個(gè)文檔和構(gòu)造層次結(jié)構(gòu),然后才能做任何工作。由于它是基于信息層次的,因而 DOM 被認(rèn)為是基于樹或基于對(duì)象的。DOM 以及廣義的基于樹的處理具有幾個(gè)優(yōu)點(diǎn)。首先,由于樹在內(nèi)存中是持久的,因此可以修改它以便應(yīng)用程序能對(duì)數(shù)據(jù)和結(jié)構(gòu)作出更改。它還可以在任何時(shí)候在樹中上下導(dǎo)航,而不是像 SAX 那樣是一次性的處理。DOM 使用起來也要簡(jiǎn)單得多。
閱讀全文
深入研究servlet線程安全
摘要: Servlet/JSP技術(shù)和ASP、PHP等相比,由于其多線程運(yùn)行而具有很高的執(zhí)行效率。由于Servlet/JSP默認(rèn)是以多線程模式執(zhí)行的,所以,在編寫代碼時(shí)需要非常細(xì)致地考慮多線程的安全性問題。然而,很多人編寫Servlet/JSP程序時(shí)并沒有注意到多線程安全性的問題,這往往造成編寫的程序在少量用戶訪問時(shí)沒有任何問題,而在并發(fā)用戶上升到一定值時(shí),就會(huì)經(jīng)常出現(xiàn)一些莫明其妙的問題。
閱讀全文
Servlet中出現(xiàn)的由多線程引起的問題
摘要: public class MyClass {
private String variable1 ;
private static String variable2 ;
public MyClass(){
}
public void method(){
String variable3;
}
}
閱讀全文
Servlet過濾器分析
摘要: servlet API中最重要的一個(gè)功能就是能夠?yàn)閟ervlet和JSP頁(yè)面定義過濾器。過濾器提供了某些早期服務(wù)器所支持的非標(biāo)準(zhǔn)“servlet鏈接”的一種功能強(qiáng)大且標(biāo)準(zhǔn)的替代品。
過濾器是一個(gè)程序,它先于與之相關(guān)的servlet或JSP頁(yè)面運(yùn)行在服務(wù)器上。過濾器可附加到一個(gè)或多個(gè)servlet或JSP頁(yè)面上,并且可以檢查進(jìn)入這些資源的請(qǐng)求信息。在這之后,過濾器可以作如下的選擇:
閱讀全文
WEB.XML元素祥解
摘要: [TOMCAT]用web.xml控制Web應(yīng)用的行為
1 定義頭和根元素
閱讀全文
Java Servlet API
摘要: 這份文檔描述了Java Servlet API的最新版本2.1版。所以,這本書對(duì)于Servlet的開發(fā)者及servlet引擎的開發(fā)者同樣適用。
閱讀全文
Servlet簡(jiǎn)介
摘要: servlet容器:
負(fù)責(zé)處理客戶請(qǐng)求、把請(qǐng)求傳送給servlet并把結(jié)果返回給客戶。不同程序的容器實(shí)際實(shí)現(xiàn)可能有所變化,但容器與servlet之間的接口是由 servletAPI定義好的,這個(gè)接口定義了servlet容器在servlet上要調(diào)用的方法及傳遞給servlet的對(duì)象類。
閱讀全文
標(biāo)簽庫(kù)的深入研究
摘要: 標(biāo)簽庫(kù)Taglib
標(biāo)簽被定義和分布在一個(gè)稱為標(biāo)簽庫(kù)的結(jié)構(gòu)中,一個(gè)標(biāo)簽庫(kù)是由元信息和類組成的集合:
1.標(biāo)簽處理器:實(shí)現(xiàn)定制標(biāo)簽功能的Java類。
閱讀全文
JSTL(JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù))
摘要: JSTL(JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù))介紹
從JSP 1.1規(guī)范開始,JSP就支持在JSP中使用自定義標(biāo)簽了,自定義標(biāo)簽的廣泛使用造成了程序員重復(fù)定義,這樣就促成了JSTL(JavaServer Pages Standard Tag Library)的誕生。
因?yàn)楣ぷ髦行枰玫絁STL,但網(wǎng)上卻苦于找不到有關(guān)JSTL的中文資料,所以就有了這篇文章。
閱讀全文
編寫線程安全的JSP程序
摘要: JSP默認(rèn)是以多線程方式執(zhí)行的,這是JSP與ASP,PHP,PERL等腳本語言不一樣的地方,也是它的優(yōu)勢(shì)之一,但如果不注意多線程中的同步問題,會(huì)使所寫的JSP程序有難以發(fā)現(xiàn)的錯(cuò)誤。下面以一個(gè)例子說明JSP中的多線程問題及解決方法。
閱讀全文
JSP中的多線程同步問題
摘要: Servlet/JSP技術(shù)和ASP、PHP等相比,由于其多線程運(yùn)行而具有很高的執(zhí)行效率。由于Servlet/JSP默認(rèn)是以多線程模式執(zhí)行的,所以,在編寫代碼時(shí)需要非常細(xì)致地考慮多線程的同步問題。然而,很多人編寫Servlet/JSP程序時(shí)并沒有注意到多線程同步的問題,這往往造成編寫的程序在少量用戶訪問時(shí)沒有任何問題,而在并發(fā)用戶上升到一定值時(shí),就會(huì)經(jīng)常出現(xiàn)一些莫明其妙的問題,對(duì)于這類隨機(jī)性的問題調(diào)試難度也很大。
閱讀全文
JSP內(nèi)置對(duì)象詳解
摘要: 1、Out對(duì)象
主要用來向客戶端輸出各種格式的數(shù)據(jù),并且管理應(yīng)用服務(wù)器上的輸出緩沖區(qū),Out對(duì)象的基類是javax.servlet.jsp.JspWriter類。
Out對(duì)象主要用來向客戶端輸出各種數(shù)據(jù)類型的內(nèi)容,并且管理應(yīng)用服務(wù)器上的輸出緩沖區(qū),其基類是JspWriter.Out對(duì)象的主要方法為:
閱讀全文
JSP中文問題解決
摘要: 想明白jsp開發(fā)過程中為什么會(huì)產(chǎn)生中文亂碼,我們先來看看unicode編碼。
Unicode (統(tǒng)一碼)顧名思義是一個(gè)將世界上各種文字統(tǒng)一在一起的東東。由美國(guó)各大電腦廠商組成的Unicode策進(jìn)會(huì)來推動(dòng)。目的,推廣一個(gè)世界通用的編碼體制,驚世界上所有常用的文字都涵蓋進(jìn)去,從而減少個(gè)電腦商開發(fā)國(guó)外市場(chǎng)遇到的問題。
閱讀全文
Java多線程編程
摘要: 編寫具有多線程能力的程序經(jīng)常會(huì)用到的方法有:
run(),start(),wait(),notify(),notifyAll(),sleep(),yield(),join()
還有一個(gè)重要的關(guān)鍵字:synchronized
本文將對(duì)以上內(nèi)容進(jìn)行講解。
閱讀全文
對(duì)各種文件的操作(java)
摘要: java中提供了io類庫(kù),可以輕松的用java實(shí)現(xiàn)對(duì)文件的各種操作。下面就來說一下如何用java來實(shí)現(xiàn)這些操作。
閱讀全文
調(diào)整 Java I/O 性能
摘要:
這篇文章討論和闡明了提供 JavaTM I/O 性能的多種技術(shù)。大多技術(shù)圍繞調(diào)整磁盤文件 I/O,但是有些內(nèi)容也同樣適合網(wǎng)絡(luò) I/O 和窗口輸出。第一部分技術(shù)討論底層的I/O問題,然后討論諸如壓縮,格式化和串行化等高級(jí)I/O問題。然而這個(gè)討論沒有包含應(yīng)用設(shè)計(jì)問題,例如搜索算法和數(shù)據(jù)結(jié)構(gòu),也沒有討論系統(tǒng)級(jí)的問題,例如文件高速緩沖。
閱讀全文
徹底明白Java的IO系統(tǒng)
摘要: Input和Output
1. stream代表的是任何有能力產(chǎn)出數(shù)據(jù)的數(shù)據(jù)源,或是任何有能力接收數(shù)據(jù)的接收源。在Java的IO中,所有的stream(包括Input和Out stream)都包括兩種類型:
閱讀全文
在Java應(yīng)用程序中訪問USB設(shè)備
摘要: Java 平臺(tái)一直都以其平臺(tái)無關(guān)性自豪。雖然這種無關(guān)性有許多好處,但是它也使得編寫與硬件交互的 Java 應(yīng)用程序的過程變得相當(dāng)復(fù)雜。在本文中,研究科學(xué)家蔣清野討論了兩個(gè)項(xiàng)目,它們通過提供使 Java 應(yīng)用程序可以使用 USB 設(shè)備的 API 而使這個(gè)過程變得更容易。雖然這兩個(gè)項(xiàng)目仍然處于萌芽狀態(tài),但是它們都顯示了良好的前景,并已經(jīng)成為一些實(shí)用應(yīng)用程序的基礎(chǔ)。
閱讀全文
Java中的類反射機(jī)制
摘要: Reflection 是 Java 程序開發(fā)語言的特征之一,它允許運(yùn)行中的 Java 程序?qū)ψ陨磉M(jìn)行檢查,或者說自審,并能直接操作程序的內(nèi)部屬性。Java 的這一能力在實(shí)際應(yīng)用中也許用得不是很多,但是在其它的程序設(shè)計(jì)語言中根本就不存在這一特性。例如,Pascal、C 或者 C++ 中就沒有辦法在程序中獲得函數(shù)定義相關(guān)的信息。
閱讀全文
Java代碼編寫30條建議
摘要: (1) 類名首字母應(yīng)該大寫。字段、方法以及對(duì)象(句柄)的首字母應(yīng)小寫。對(duì)于所有標(biāo)識(shí)符,其中包含的所有單詞都應(yīng)緊靠在一起,而且大寫中間單詞的首字母。
閱讀全文
Java動(dòng)態(tài)的程序設(shè)計(jì)
摘要: 第一部分 類和類的裝載
我們來看一下類以及它們被JVM裝載的時(shí)候做了些什么?
閱讀全文
為什么Java中繼承是有害的
摘要: 大多數(shù)好的設(shè)計(jì)者象躲避瘟疫一樣來避免使用實(shí)現(xiàn)繼承(extends 關(guān)系)。實(shí)際上80%的代碼應(yīng)該完全用interfaces寫,而不是通過extends?!癑AVA設(shè)計(jì)模式”一書詳細(xì)闡述了怎樣用接口繼承代替實(shí)現(xiàn)繼承。這篇文章描述設(shè)計(jì)者為什么會(huì)這么作。
閱讀全文
對(duì)象引用對(duì)GC的影響
摘要: 如果您認(rèn)為 Java 游戲開發(fā)人員是 Java 編程世界的一級(jí)方程式賽車手,那么您就會(huì)明白為什么他們會(huì)如此地重視程序的性能。 游戲開發(fā)人員幾乎每天都要面對(duì)的性能問題,往往超過了一般程序員考慮問題的范圍。哪里可以找到這些特殊的開發(fā)人員呢?Java 游戲社區(qū)就是一個(gè)好去處。 雖然在這個(gè)站點(diǎn)可能沒有很多關(guān)于服務(wù)器端的應(yīng)用,但是我們依然可以從中受益,看看這些“惜比特如金”的游戲開發(fā)人員每天所面對(duì)的,我們往往能從中得到寶貴的經(jīng)驗(yàn)。讓我們開始游戲吧!
閱讀全文
JAVA中的傳值與傳引用
摘要: 首先,推薦對(duì)Java有一定理解的同仁一本書《Practical Java》。在《Practical Java》中也有一個(gè)章節(jié)介紹Java中關(guān)于傳值和傳引用的問題,堪稱經(jīng)典。
《Practical Java》
閱讀全文
優(yōu)化JAVA程序,提高JAVA性能
摘要: 通過使用一些輔助性工具來找到程序中的瓶頸,然后就可以對(duì)瓶頸部分的代碼進(jìn)行優(yōu)化。一般有兩種方案:即優(yōu)化代碼或更改設(shè)計(jì)方法。我們一般會(huì)選擇后者,因?yàn)椴蝗フ{(diào)用以下代碼要比調(diào)用一些優(yōu)化的代碼更能提高程序的性能。而一個(gè)設(shè)計(jì)良好的程序能夠精簡(jiǎn)代碼,從而提高性能。
閱讀全文
JAVA性能優(yōu)化集錦
摘要: Java性能優(yōu)化技巧集錦
可供程序利用的資源是有限的,優(yōu)化的目的就是讓程序用盡可能少的資源完成預(yù)定的任務(wù)。
可供程序利用的資源(內(nèi)存、CPU時(shí)間、網(wǎng)絡(luò)帶寬等)是有限的,優(yōu)化的目的就是讓程序用盡可能少的資源完成預(yù)定的任務(wù)。優(yōu)化通常包含兩方面的內(nèi)容:減小代碼的體積,提高代碼的運(yùn)行效率。本文討論的主要是如何提高代碼的效率。
閱讀全文
JAVA類加載內(nèi)幕(一)
摘要: 類加載是java語言提供的最強(qiáng)大的機(jī)制之一。盡管類加載并不是討論的熱點(diǎn)話題,但所有的編程人員都應(yīng)該了解其工作機(jī)制,明白如何做才能讓其滿足我們的需要。這能有效節(jié)省我們的編碼時(shí)間,從不斷調(diào)試ClassNotFoundException, ClassCastException的工作中解脫出來。
閱讀全文
JAVA類加載內(nèi)幕(二)
摘要: 定制類加載器
要較好地控制類的加載,就要實(shí)現(xiàn)定制的類加載器。所有自定義的類加載器都應(yīng)繼承自java.lang.ClassLoader。而且在構(gòu)造方法中,我們也應(yīng)該設(shè)置父類加載器。然后重寫findClass()方法。differentversionspush文件夾包含了一個(gè)叫做FileSystemClassLoader的自訂制的類加載器。其結(jié)構(gòu)如圖9所示。
閱讀全文
關(guān)于Java棧與堆的思考
摘要: 1. 棧(stack)與堆(heap)都是Java用來在Ram中存放數(shù)據(jù)的地方。與C++不同,Java自動(dòng)管理?xiàng):投眩绦騿T不能直接地設(shè)置?;蚨?。
2. 棧的優(yōu)勢(shì)是,存取速度比堆要快,僅次于直接位于CPU中的寄存器。但缺點(diǎn)是,存在棧中的數(shù)據(jù)大小與生存期必須是確定的,缺乏靈活性。另外,棧數(shù)據(jù)可以共享,詳見第3點(diǎn)。堆的優(yōu)勢(shì)是可以動(dòng)態(tài)地分配內(nèi)存大小,生存期也不必事先告訴編譯器,Java的垃圾收集器會(huì)自動(dòng)收走這些不再使用的數(shù)據(jù)。但缺點(diǎn)是,由于要在運(yùn)行時(shí)動(dòng)態(tài)分配內(nèi)存,存取速度較慢。
閱讀全文
每個(gè)初學(xué)者都應(yīng)該搞懂的問題
摘要: 對(duì)于這個(gè)系列里的問題,每個(gè)學(xué)Java的人都應(yīng)該搞懂。當(dāng)然,如果只是學(xué)Java玩玩就無所謂了。如果你認(rèn)為自己已經(jīng)超越初學(xué)者了,卻不很懂這些問題,請(qǐng)將你自己重歸初學(xué)者行列。內(nèi)容均來自于CSDN的經(jīng)典老貼。
問題一:我聲明了什么!
閱讀全文
關(guān)于Java占用內(nèi)存的研究
摘要: 下面的論述針對(duì)32位系統(tǒng),對(duì)64位系統(tǒng)不適用,后敘。
經(jīng)常你寫了一個(gè)程序,一測(cè)試,功能沒問題,一看內(nèi)存占用也不多,就不去考慮其它的東西了。但可能程序使用了一個(gè)什么數(shù)據(jù)結(jié)構(gòu),會(huì)當(dāng)數(shù)據(jù)規(guī)模變大時(shí),內(nèi)存占用激增。
閱讀全文
java內(nèi)存的思考與總結(jié)
摘要: 1. java中堆與棧
在Java程序運(yùn)行時(shí),有6個(gè)地方可以用于保存數(shù)據(jù):
(1) 寄存器。最快的保存區(qū)域,位于處理器內(nèi)部,數(shù)量十分有限,它是根據(jù)需要由編譯器分配。我們對(duì)此沒有直接的控制權(quán).
閱讀全文
了解JAVA虛擬機(jī)
摘要: 一、什么是Java虛擬機(jī)
當(dāng)你談到Java虛擬機(jī)時(shí),你可能是指:
1、抽象的Java虛擬機(jī)規(guī)范
2、一個(gè)具體的Java虛擬機(jī)實(shí)現(xiàn)
3、一個(gè)運(yùn)行的Java虛擬機(jī)實(shí)例
閱讀全文
Java虛擬機(jī)類裝載:原理、實(shí)現(xiàn)與應(yīng)用
摘要: 一、引言
Java虛擬機(jī)(JVM)的類裝載就是指將包含在類文件中的字節(jié)碼裝載到JVM中, 并使其成為JVM一部分的過程。JVM的類動(dòng)態(tài)裝載技術(shù)能夠在運(yùn)行時(shí)刻動(dòng)態(tài)地加載或者替換系統(tǒng)的某些功能模塊, 而不影響系統(tǒng)其他功能模塊的正常運(yùn)行。本文將分析JVM中的類裝載系統(tǒng),探討JVM中類裝載的原理、實(shí)現(xiàn)以及應(yīng)用。
閱讀全文
Java虛擬機(jī)運(yùn)行機(jī)制
摘要: JVM(Java虛擬機(jī))一種用于計(jì)算設(shè)備的規(guī)范,可用不同的方式(軟件或硬件)加以實(shí)現(xiàn)。編譯虛擬機(jī)的指令集與編譯微處理器的指令集非常類似。Java虛擬機(jī)包括一套字節(jié)碼指令集、一組寄存器、一個(gè)棧、一個(gè)垃圾回收堆和一個(gè)存儲(chǔ)方法域。
閱讀全文
JAVA入門需要掌握的知識(shí)
摘要: Java的白皮書為我們提出了Java語言的11個(gè)關(guān)鍵特性
(1)Easy:Java的語法比C++的相對(duì)簡(jiǎn)單,另一個(gè)方面就是Java能使軟件在很小的機(jī)器上運(yùn)行,基礎(chǔ)解釋其和類庫(kù)的支持的大小約為40kb,增加基本的標(biāo)準(zhǔn)庫(kù)和線程支持的內(nèi)存需要增加125kb
閱讀全文