Time of Update: 2017-02-27
在伺服器端,如果用 Java 語言實現的話,直接與瀏覽器打交道的要算JavaServer Pages(JSPs)和Servlets了。在它們的後面還有通過Java實現的Data Beans、DB Beans和Commands。1.Java Server Pages(JSPs)JavaServer Pages(JSPs)是對HTML的另一種擴充,它可以通過一些特殊的標籤向頁面中插入動態資訊。如可以利用<%和%>標籤添加Java
Time of Update: 2017-02-27
一個好的編程模型,必須要具備良好的功能性、可靠性、可用性、高效性、可維護性和可移植性。而Java作為一種程式設計語言,其特點符合了這些要求,所以在 Web應用的開發中得到了廣泛的使用。當前最流行的Web應用伺服器,也多採用Java架構,如IBM的WebSphere Application Server和BEA的WebLogic Application Server等。Java的各種技術在應用伺服器之上的其他部分扮演著重要的角色,成為整個Web應用的靈魂。如何選擇一個合理的編程模型,有效利用它們,
Time of Update: 2017-02-27
import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.List;import java.util.Map;/*** 對字元集中字元出現的次數繼續排序。** @author 趙學慶 */public class T { public static void main(String args[]) { String str =
Time of Update: 2017-02-27
在檔案裡增加一行的唯一方法就是讀取原始檔案,然後寫入到一個臨時檔案,同時寫入要插入的資料。然後刪除原始檔案,再把臨時檔案改名為原始檔案名。package net.java2000.io;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStreamReader;import
Time of Update: 2017-02-27
Java 語言中常被忽視的一個方面是它被歸類為一種命令式(imperative)程式設計語言。命令式編程雖然由於與 Java 語言的關聯而相當普及,但是並不是惟一可用的編程風格,也不總是最有效。在本文中,我將探討在 Java 開發實踐中加入不同的編程方法 ── 即函數編程(FP)。命令式編程是一種用程式狀態原因計算的方法。使用這種範型的編程人員用語句改變程式狀態。這就是為什麼,像 Java 這樣的程式是由一系列讓電腦執行的命令 (或者語句) 所組成的。另一方面,
Time of Update: 2017-02-27
1.equals()在初學Java的時候,很多人會說在比較對象的時候,==是比較地址,equals()是比較對象的內容,誰說的?看看equals()方法在Object類中的定義:public boolean equals(Object obj){
Time of Update: 2017-02-27
本文分析了在 Java 平台上可用的兩個資料管理策略:Java 對象序列化和 Java 資料庫連接(JDBC)。儘管本質上這兩種資料管理策略並不存在孰優孰劣的問題,但在管理公司資訊系統時,JDBC 輕而易舉地得以勝出。在本文中,Java 開發人員 G.V.B. Subrahmanyam 和 Shankar Itchapurapu 對序列化和 JDBC都進行了介紹,並通過討論和執行個體來向您展示了 JDBC
Time of Update: 2017-02-27
即使效能不是當前項目的一個關鍵需求,甚至沒有被標明為一個需求,通常也難於忽略效能問題,因為您可能會認為忽略效能問題將使自己成為“差勁的工程師”。開發人員在以編寫高效能代碼為目標的時候,常常會編寫小的基準程式來度量一種方法相對於另一種方法的效能。不幸的是,正如您在 December 撰寫的 "動態編譯與效能測量" 這期文章中所看到的,與其他靜態編譯的語言相比,評論用 Java
Time of Update: 2017-02-27
在他的關於 JTS 的系列文章的第 1 和第 2 部分,Brian 講述了一些基礎知識,包括什麼是事務以及 J2EE 容器如何使事務服務對 EJB 組件透明。儘管能夠以聲明的方式而不是編程的方式指定組件的事務性語義可以大大增強配置公司專屬應用程式程式時的靈活性,但在裝配應用程式時做出不當的決定會削弱應用程式的效能和穩定性。在這最後一部分,Brian 討論了 J2EE 提供的用來管理事務劃分和隔離的工具和一些高效率地使用這些工具的指導。請單擊文章頂部或底部的 討論,在
Time of Update: 2017-02-27
在這個關於事務的系列文章的 第 1 部分,我們講述了一些基礎知識,包括什麼是事務,以及事務對於構建可靠的分布式應用程式來說至關重要的原因。在這一部分,我們將探討如何將 J2EE 應用程式構建到事務中,以及 JTS 和 J2EE 容器如何設法使事務服務(包括事務劃分、資源徵用和事務傳播)對組件程式員來說幾乎是不可見的。請單擊文章頂部或底部的 討論,在 討論論壇與作者和其他讀者分享您對本文的想法。在這個系列的 第 1 部分,我們討論了事務並研究了它們的基本屬性 ―
Time of Update: 2017-02-27
引言在過去數年裡,隨著全球資訊網聯盟(World Wide Web Consortium,W3C)更新了核心規範,並引入了彌補 Web服務最初缺陷的新規範,Web服務發生了大量的變化。W3C 的Web Services Activity 小組所維護的規範以獨立於供應商的方式將 Web服務作為一組 XML 規範進行處理。同時,Java™ Community Process (JCP) 也在維護自己的規範集,以將 W3C 的建議合并到 Java 語言中。Java APIs for
Time of Update: 2017-02-27
Web 服務的力量在於互通性。由於業界在 Web 服務技術方面(SOAP、WSDL、UDDI)的協作,更具體地說,是由於 Web 服務互通性組織(Web Services Interoperability organization,WS-I.org)的工作,Web 服務才可以與其他的 Web 服務進行互動,而不管 Web 服務開發和運行在哪一個平台上(比如是 Microsoft .NET 還是 IBM WebSphere)。Web 服務客戶機分為多種類型,比如另一個 Web
Time of Update: 2017-02-27
在簡單 Web 服務環境中,客戶機直接連接到伺服器,而伺服器直接對請求執行所有必需的處理。正如本系列 上一篇文章 所述,使用 SSL 提供保護的串連可以為這類環境中的大部分應用提供出色的安全性。但是,更加複雜的環境變得越來越普遍,其中涉及到使用多層伺服器處理請求。在許多企業環境中日益流行的服務編排的完整理念就是以這種方法為基礎的,這與面向服務架構(SOA)的概念相同。在這些類型的環境中,必須實現更強大的 WS-Security 替代方案。正如上一期文章所述,WS-Security
Time of Update: 2017-02-27
WS-Security 以現有的密碼學以及 XML 加密和簽名欄業標準為基礎,為 Web 服務應用程式提供了一組全面的安全特性,您可以通過 WS-Policy 和 WS-SecurityPolicy 來指定特定應用程式可以使用哪些特性,從而允許服務客戶機自行配置以訪問服務。通過跨多個平台和 Web 服務架構對這些標準的廣泛支援,可以實現出色的互通性(並且會不斷改善)。儘管能帶來這麼多好處,但 WS-Security 也存在一些缺點。在本 系列 的前兩篇文章中,您已經知道 WS-Security
Time of Update: 2017-02-27
ServerSocket類有以下三個選項:1.SO_TIMEOUT:
Time of Update: 2017-02-27
在通過DNS尋找網域名稱的過程中,可能會經過多台中間DNS伺服器才能找到指定的網域名稱,因此,在DNS伺服器上尋找網域名稱是非常昂貴的操作。在Java中為了緩解這個問題,提供了DNS緩衝。當InetAddress類第一次使用某個網域名稱(如www.csdn.net)建立InetAddress對象後,JVM就會將這個網域名稱和它從DNS上獲得的資訊(如IP地址)都儲存在DNS緩衝中。當下一次InetAddress類再使用這個網域名稱時,就直接從DNS緩衝裡獲得所需的資訊,而無需再訪問DNS伺服器。
Time of Update: 2017-02-27
在《建立InetAddress對象的四個靜態方法》一文中通過getAllByName得到了www.csdn.net對應的四個IP地址。從理論上說,在IE(或其他的Web瀏覽器,如Firefox)的地址欄中輸入這四個IP地址中的任何一個,都可能訪問www.csdn.net。如輸入http://211.100.26.124。但IE卻返回了一個錯誤資訊。在輸入另外三個IP後,都會得到同樣的錯誤資訊。這個錯誤並不是網頁未找到錯誤(HTTP狀態號:404),而是拒絕訪問錯誤(HTTP狀態號:403)。當在
Time of Update: 2017-02-27
安全性對於使用 Web 服務交換業務資料至關重要。如果資料被第三方截取,或者欺騙性資料被當作有效資料接收,那麼會引起嚴重的財務或法律後果。為 Web 服務(任何形式的資料交換)設計和實現應用程式的安全處理始終是可行的,但是這種方法比較冒險,因為即使是一個小錯誤和疏漏都會導致嚴重的安全性漏洞。與其他更簡單的資料交換相比,SOAP 的優勢之一是它支援模組化擴充。自 SOAP 首次發布以來,安全性一直是擴充的主要關注點,促使了 WS-Security
Time of Update: 2017-02-27
為什麼需要另一種文檔模型?Apache Axis2 1.1 已經發布,它為那些長期運行 Apache Web 服務架構系列的忠實使用者提供了令人興奮的新特性。我們將在後續的文章中討論關於 Axis2 的內容,本文將深入研究 AXIs 物件模型 (AXIOM) XML 文檔模型,這是 Axis2 的核心。AXIOM 是 Axis2 中一個主要的創新,並且是 Axis2 能夠比原來的 Axis 提供更好效能的原因之一。本文將向您介紹 AXIOM 的工作原理、Axis2 的各個部分如何構建於
Time of Update: 2017-02-27
Java 編程中的連網包括了定位和識別資源的能力以及通過 TCP 和 UDP 串連進行通訊的能力。首先,您需要識別具有象 www.ibm.com 這樣名稱的資源,然後開啟到該資源的串連,最後在您自己和串連的另一端之間發送資訊包。由於安全性原因,可能會包括其它任務,但是整個過程是一樣的。對於 Java 平台,會在 java.net 包中找到支援這些操作的類。從 Java 編程的早期到現在,這些操作中大多數都未曾發生太大的變化。但是,隨著 Merlin