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