Time of Update: 2017-02-27
隨著最近 Sun Microsystems 的 Java Web Services Developers Pack(Java WSDP)版本 1.0 的發布,Java 開發人員現在可以擁有一個方便的、集所有功能於一身的下載包,用來協助在 Java 平台上開發 Web 服務。Java WSDP 包含 Java XML Pack 中的所有用於 XML 的 Java API(Java APIs for XML(JAX)),還包含有 Apache Tomcat 伺服器以及為開發與測試 Web
Time of Update: 2017-02-27
FtpList部分是用來顯示FTP伺服器上的檔案;GetButton部分為從FTP伺服器下傳一個檔案;PutButton部分為向FTP伺服器上傳一個檔案。別忘了在程式中還要引入兩個庫檔案(importsun.net.*,import sun.net.ftp.*)。以下是這三部分的JAVA來源程式:(1)顯示FTP伺服器上的檔案void ftpList_actionPerformed(ActionEvent e) {String
Time of Update: 2017-02-27
效能問題的最明顯表現是網頁的回應時間變慢。在J2EE系統中,經常體現有下面更為基本的癥狀:應用伺服器資源的使用方式JVM堆的使用方式系統資源的使用方式資料庫資源的使用方式網路活動這些現象表明J2EE應用依賴很多外部資源,並且是運行在一個層次化的執行模式的環境中:由於Java虛擬機器和應用伺服器掩蓋了作業系統和硬體的特性,所以在設計軟體系統時,架構工程師更應該深刻理解整個作業環境。在設計軟體系統時,架構工程師應把效能和可擴充性放在首位,然後開始尋找容易解決的問題,反應時間緩慢通常的原因是訪問資料庫
Time of Update: 2017-02-27
JPDA(Java Platform Debugger Architecture)是 Java 平台調試體繫結構的縮寫。通過 JPDA 提供的 API,開發人員可以方便靈活的搭建 Java 調試應用程式。 JPDA 主要由三個部分組成:JAVA 虛擬機器工具介面(JVMTI)、Java 調試線協議(JDWP),以及 Java 調試介面(JDI)。本系列將會詳細介紹這三個模組的內部細節,並通過執行個體為讀者揭開 JPDA 的面紗。本系列的 第 1 部分 從整體上介紹 JPDA
Time of Update: 2017-02-27
//首先定義一個介面來隔離類:public interface Operator{// public java.util.List act(java.util.List params);public java.util.List act(String content,String content2,java.util.List
Time of Update: 2017-02-27
為什麼使用volatile比同步代價更低?同步的代價, 主要由其覆蓋範圍決定, 如果可以降低同步的覆蓋範圍, 則可以大幅提升程式效能.而volatile的覆蓋範圍僅僅變數層級的. 因此它的同步代價很低.volatile原理是什麼?volatile的語義, 其實是告訴處理器, 不要將我放入工作記憶體, 請直接在主存操作我.(工作記憶體詳見java記憶體模型)因此, 當多核或多線程在訪問該變數時, 都將直接操作主存, 這從本質上, 做到了變數共用.volatile的有什麼優勢?1,
Time of Update: 2017-02-27
企業最重要的資產應該是資料資訊,但現在的公司專屬應用程式除了需要儲存資料外,還經常要求跟蹤資料變化整個過程,並會擴充到一系列相關的要求,如資料變化的原因、變化的時間等,而且在許多情況下是對以文檔形式儲存的資料進行跟蹤。使用SubVersion可以滿足這些貌似普通但實際上很複雜的要求來自資料的挑戰公司專屬應用程式儲存了關鍵資料,而且應用程式並不僅限於對資料進行插入、讀取、更新和刪除操作(即CRUD),應用程式還期望能夠儲存資料更改的記錄。此外,企業按照一系列的業務或者規定的要求,不但要求儲存資料資
Time of Update: 2017-02-27
Java反射機制提供了一種強大的應用程式介面來協助我們在運行時檢測和執行對象上的操作。該機制允許程式員審視一個未知對象,並且獲得它的屬性,例如對象上的方法,JavaBean的屬性以及繼承關係等。Java中有兩種類型的值,一種是類類型,它把對象的屬性定義在一個類中。類類型是物件導向結構的基本組成部分。第二種類型的值是基礎資料型別 (Elementary Data
Time of Update: 2017-02-27
java程式也會引起記憶體泄露已經是公開的秘密了,工作中需要對該問題引起充分的重視。市場上能夠進行java記憶體檢測的工具也有不少,我在工作中使用JBuilder內建的Optimize工具,現就最近一次使用Optimize的工程及經驗進行以下梳理。前一段時間根據需要,對工作中維護的某個模組進行了java記憶體泄露的測試,結果發現了很嚴重的問題:該模組一共有6大準系統,每個功能每操作一次,大約要新消耗9-10k的記憶體空間,產生110個左右的新對象。作為商用軟體產品是絕不允許這樣的問題的出現的。O
Time of Update: 2017-02-27
1、不可以用一個本地類型(如int float)來替換泛型2、運行時類型檢查,不同類型的泛型類是等價的(Pair與Pair是屬於同一個類型Pair),這一點要特別注意,即如果a instanceof Pair==true的話,並不代表a.getFirst()的傳回值是一個String類型3、泛型類不可以繼承Exception類,即泛型類不可以作為異常被拋出4、不可以定義泛型數組5、不可以用泛型構造對象,即:first = new T();
Time of Update: 2017-02-27
Java是一種物件導向的語言,因此其指令(原始碼)以類的形式出現。要在資料庫中執行Java,您可以在資料庫外編寫Java指令並在資料庫外將它們編譯為已編譯的類(位元組代碼),這些類是包含Java指令的二進位檔案。然後,將這些已編譯的類安裝到資料庫中。安裝之後,便可以在資料庫伺服器中將這些類作為預存程序來執行了。例如,下面的語句建立一個Java預存程序:CREATE PROCEDURE insertfix()EXTERNAL NAME 'JDBCExample.InsertFixed
Time of Update: 2017-02-27
一個典型應用中,使用delphi作為用戶端,J2EE服務端,兩者之間用XML作為資料交換,為了提高效率,對XML資料進行壓縮,為此需要找到一種壓縮/解壓演算法能夠兩個平台之間互動處理,使用ZLIB演算法就是一個不錯的解決方案。1、JAVA實現在JDK中,在java.util.zip包中已經內建了ZLIB的實現,範例程式碼如下:1//解壓2 public String decompressData(String encdata) {3 try {4 ByteArrayOutputStream
Time of Update: 2017-02-27
如果你這樣的需求:在運行時建立實現一組給定介面的類,注意這個類是在運行時建立的,你就需要使用JAVA中的代理類來達成你的要求。代理類提供在運行時建立類的能力,這個建立的類能實現你指定的介面。 當然你不能在運行時為要實現的介面中的方法定義新代碼,而是提供一個調用處理器來實現。調用處理器是實現了InvocationHandler介面的類的對象,此介面只有一個方法:Object invoke(Object proxy,Method mtd,Object[]
Time of Update: 2017-02-27
[1] String fileReaderStringHandle(String fileName)將檔案(由fileName指定)讀入到一個字串;[2] byte[] fileReaderByteHandle(String fileName)將檔案(由fileName指定)讀入到一個位元組數組;[3] void fileWriterHandle(String fileName, String
Time of Update: 2017-02-27
利用java.net包提供的網路能力。以有串連流通訊方式為例, 在伺服器端的操作為一般為:⑴ 建立一個ServerSocket對象,在指定連接埠監聽用戶端發來的請求。⑵ 在接收到請求時accept()方法將返回一個Socket對象。⑶ 用上述Socket對象建立輸入、輸出資料流對象。⑷ 通過輸入、輸出資料流與客戶互動。⑸ 互動完畢,關閉輸入、輸出資料流與Socket。⑹ 服務程式運行結束,關閉ServerSocket。實現代碼代碼類如:try{boolean flag=true;Socket
Time of Update: 2017-02-27
//根據不同的難度產生隨機字母和數字for(int i=0; readomNumStart.length()<4; i++) {if(difficult == 1) {//產生隨機的0-9的數字a = String.valueOf((int)(Math.random() * 10)) ;}if(difficult == 2) {//在0-9和a,b,c,d中隨機產生。String[] readomWord =
Time of Update: 2017-02-27
在Java Web組件之間的三種關聯關係:1.請求轉寄2.URL重新導向3.包含請求轉寄:允許把請求轉寄給同一應用程式中的其他web組件。這種技術通常用於web應用控制層的servlet流程式控制制器,它檢查http請求資料,並將請求轉寄到適合的目標組件,目標組建執行具體的請求處理操作,並產生響應結果。jsp頁面中添加servlet中加入下面代碼:<jap:forward page="hello.jsp"/>RequestDispatcher
Time of Update: 2017-02-27
Java做的系統給人的印象是什嗎?占記憶體!說道這句話就會有N多人站出來為java辯護,並舉出一堆的效能測試報告來證明這一點。其實從理論上來講java做的系統並不比其他語言開發出來的系統更佔用記憶體,那麼為什麼卻有這麼N多理由來證明它確實占記憶體呢?兩個字,陋習。(1)別用new
Time of Update: 2017-02-27
C# 提供了 DataSet,可以將資料來源中的資料讀取到記憶體中,進行離線操作,然後再同步到資料來源。同樣,在 Java 中也提供了類似的實現,即 RowSet。javax.sql.rowset 包下,定義了五個不同的 RowSet 介面,供不同的場合使用。本文將分別對這五個 RowSet 的使用場合以及詳盡用法進行介紹,並且描述使用中可能出現的問題,以提醒讀者在實際使用時繞開這些問題。RowSet 簡介javax.sql.rowset 自 JDK 1.4 引入,從 JDK 5.0
Time of Update: 2017-02-27
1、Web Services.優先支援編寫 XML web service 用戶端程式。你可以用過簡單的annotaion將你的API發布成.NET互動的web services. Mustang 添加了新的解析和 XML 在 Java object-mapping APIs中, 之前只在Java EE平台實現或者Java Web Services Pack中提供.2、Scripting.