Java
及
Web
應用
1. Java介紹
1.1 什么是Java
Java有兩方面的含義:Java語言、Java平臺
作為一種語言,Java是一種跨平臺
開發語言
,能開發出跨平臺的應用對象和應用程序。例如:
Oracle
8i的安裝程序就是用Java開發的。Java語言具有以下特點:簡單、面向對象、分布式、解釋執行、安全、 跨平臺、高性能、多
線程
等特點。
作為一種平臺,Java平臺包括兩部分內容:Java虛擬機和Java API。
1.2 Java之最
最好的集成開發工具
No1. Visualage For Java (www.ibm.com)
No2.
JBuilder
3 (www.inprise.com)
No3. JDeveloper (www.oracle.com)
No4. VisualCafe
我推薦使用emacs
最好的
應用服務器
No1. WebObjects (www.apple.com)
No2. WebSphere Application Server Ent
ERP
rise Edition v3.0 (www.ibm.com)
No3. Apache JServ (java.apache.org)
No4. WebLogic Server
我推薦使用tomcat (jakarta.apache.org), Enhydra (www.enhydra.org)
最好的Java類庫
No1. The Java Collections (www.sun.com)
No2. IBM Host
Access
Library API For Java (www.ibm.com)
No3. JClass Enterprise (www.klgroup.com)
No4. JGL
最好的Java中間件
No1.
Sybase
Enterprise Application Server (www.sybase.com)
No2. WebSphere Host On-Demand v4 (www.ibm.com)
No3. Progress Sonicmq (www.sonicmq.com)
No4. Visiobroker
我推薦使用cocoom (
XML
.apache.org),
Struts
(jakarta.apache.org), turbine (java.apache.org)
最好的Java組件
No1. Bea Jumpstart eBusiness Smart Components (www.bea.com)
No2. JClass Enterprise Suite (www.klgroup.com)
No3. LingoGUI (www.slangsoft.com)
No4. Stdioj
最好的
數據庫
產品
No1. Oracle 8i (www.oracle.com)
No2. Sybase Adaptive Server Anywhere (www.sybase.com)
No3. Cloudscape (www.informix.com)
No4. JDataStore
我推薦使用PostgreSQL
最好的Java虛擬機
No1. Java HotSpot Performance Engine (java.sun.com)
No2. ChaiVM (www.hewlett-packard.com)
No3. JSCP (www.nsicom.com)
No4. Jeode Platform
最好的消息工具
No1. Java Message Queue (www.sun.com)
No2. SonicMQ (www.sonicmq.com)
No3. FioranoMQ (www.fiorano.com)
No4. IBus
以上排名來自JDJ Nov 2000統計數據。
--------------------------------------------------------------------------------
2. ANT 介紹
Ant是一個基于java的build工具。大家都知道,現在已經有了許多的build工具,例如make、gnumake、nmake、jam等,而且這些工具都非常優秀。那我為什么還要給大家介紹Ant這個新工具呢? 因為Ant是一個跨平臺的Build工具。之所以Ant能跨平臺,是因為Ant不再需要你編寫shell命令,Ant的配置文件是基于XML的任務樹,能讓你運行各種各樣的任務,任務的運行是由實現了特定任務接口的對象來完成的。
2.1 獲得Ant
Binary版:最新的穩定版的
下載
地址是:http://jakarta.apache.org/builds/ant/release/v1.1/bin。
Source版:最新的
源碼
穩定版下載地址是:http://jakarta.apache.org/builds/ant/release/v1.1/src/。如果你想獲得最新的源碼,地址是:http://jakarta.apache.org/from-cvs/jakarta-ant/
2.2 系統要求
需要在CLASSPATH中包含與JAXP兼容的XML parser,才能編譯和使用Ant。
我給大家推薦一個XML parser:xerces,下載地址:http://xml.apache.org/xerces
當然,
JDK
肯定是必需的,并且是1.1或之后版本。
2.3 編譯Ant
1. 進入jakarta-ant目錄
2. 將JDK加入到你的PATH環境變量中
3. 設置JAVA_HOME環境變量,指向你的JDK安裝目錄
4. 運行bootstrap.sh角本文件
5. 運行以下命令創建Ant的Binary版:
build.sh -Dant.dist.dir=<安裝Ant的目錄> dist
2.4 安裝Ant
1. 設置ANT_HOME環境變量,指向你的Ant目錄
2. 設置JAVA_HOME環境變量,指向你的JSK目錄
3. 將ANT_HOME/bin加入PATH環境變量中
4. 將ant.jar和xerces.jar加入到CLASSPATH環境變量中
假設Ant安裝在/usr/local/ant目錄,可通過以下方法進行設置:
export ANT_HOME=/usr/local/ant
export JAVA_HOME=/usr/local/jdk-1.2.2
export PATH=${ANT_HOME}/bin:${PATH}
export CLASSPATH=${ANT_HOME}/lib/ant.jar:/lib/xerces.jar:${CLASSPATH}
2.5 運行ant
運行Ant非常簡單,如果你按照上面描述的方法安裝了ant,只需在命令行鍵入ant就行了。
當你不帶任何參數運行ant時,Ant會在當前目錄找一個名叫build.xml的文件。如果找到了,就將該文件作為build配置文件。如果沒找到,它會自動地查找上級目錄,一直找到根目錄。也可以通過命令行參數 -buildfile 來指定其他配置文件,其中,是你要采用的配置文件名。
--------------------------------------------------------------------------------
3.
JSP
介紹
JSP是JavaServer Pages的簡寫。JSP技術能讓Web開發員和網頁設計員快速地開發容易維護的動態Web主頁。
用JSP開發的Web應用是跨平臺的,即能在
Linux
下運行,也能在其他
操作系統
上運行。
JSP技術使用Java編程語言編寫類XML的tags和scriptlets,來封裝產生動態網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在于服務端的資源(例如JavaBesns)的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支持可重用的基于組件的設計,使基于Web的應用程序的開發變得迅速和容易。
JSP技術是
Servlet
技術的擴展。Servlet是平臺無關的,100%純Java的Java服務端組件。
3.1 JSP與jakarta
正是因為Jakarta項目組的努力,才使Servlet/JSP據有了前所未有的動力。
從Servlet2.2開始,Sun公司已放棄了對Servlet的控制,全權交由Jakarta項目組進行開發和維護。Sun公司不再提供Servlet/JSP的開發包,而是將軟件下載全部鏈接到Jakarta站點,并全力支持Jakarta項目組的開發工作(Jakarta項目組中有部分骨干力量是Sun公司員工)。這是Sun公司的英明決策,也是開源軟件的重大成果。
JSP技術是jakarta所提供的兩大模板技術(JSP和Velocity)之一,這兩個都是非常好的模板技術。jakarta的
Framework
(例如struts、slide)對JSP提供了很好的支持,java.apache的framework(turbine)對Velocity提供了很好的支持。
3.2 運行自己的JSP文件
有些網友不知道怎么才能運行自己的JSP文件,我在這里簡單介紹一下,給大家提供一點參考:
1. 下載并安裝tomcat。下載地址:http://jakarta.apache.org/tomcat
2. 編寫自己的JSP網頁和Java對象。
3. 配置自己的Web應用。配置方法:
在TOMCAT_HOME/conf/server.xml文件中加入一行:
其中,TOMCAT_HOME是tomcat的主目錄,appName是你的Web應用的名稱。
4. 將你的jsp文件、html文件、image文件拷貝到TOMCAT_HOME/webapps/appName目錄下。
5. 編譯你的java文件。
6. 將編譯好的class文件拷貝到TOMCAT_HOME/webapps/WEB-INF/classes目錄下。也可將class文件打包成jar文件放到TOMCAT_HOME/webapps/WEB-INF/lib目錄下。
7. ALL IS OK! 你可以在你的瀏覽器上看到你的成果了:
http://localhost:8080/appName/youjsp.jsp
其中,appName是你配的Web應用名稱,youjsp.jsp是你編寫的jsp文件名。
--------------------------------------------------------------------------------
4. Tomcat介紹
在我寫了一些有關Struts和Framework的貼子后,有人問我什么是tomcat,什么是jakarta。我才發現我應該先寫一些更基本的東西。這篇是介紹tomcat的文章,我還準備寫一篇介紹jakarta的文章。
4.1 什么是Tomcat
Tomcat是Java Servlet 2.2和JavaServer Pages 1.1技術的標準實現,是基于Apache許可證下開發的自由軟件。
4.2 Tomcat下載
下載地址:http://jakarta.apache.org/downloads/binindex.html
4.3 Tomcat和JServ的區別
JServ是由Apache開發并使用的Servlet API 2.0兼容的Servlet容器。Tomcat是完全重寫的Servlet API 2.2和JSP 1.1兼容的Servlet/JSP容器。Tomcat使用了JServ的一些代碼,特別是Apache服務適配器。
4.4 什么是servlets,什么是JSPs
Servlet為Web開發員提供了一個簡單、一致的機制,來擴展Web
服務器
的功能,并且和已有的業務系統交互。可以把Servlet看作在服務端運行的
Applet
。
JSP技術是servlet技術的擴展,對HTML和XML的頁面創作提供支持。它網頁設計員能非常容易地將固定或靜態的模板數據與動態內容進行組合。
--------------------------------------------------------------------------------
我把近一段時間我在論壇中所發的貼子進行了一下整理,形成這篇文檔,以便大家參考,歡迎提出寶貴意見。 我在寫作本文原搞時采用的是sgml格式,通過SGML-Tools轉成你所看到的格式。SGML-Tools是一組文本格式化工具,能將簡單的sgml文檔轉變為格式豐富的各種文件,包括HTML、TeX、DVI、PostScript、plain text、groff等。感謝SGML-Tools的所有開發員所作出的貢獻。 本文版權歸 中文Linux論壇所有。
--------------------------------------------------------------------------------
5. servlet/jsp/xml Frameworks介紹
5.1 Cocoon - 基于XML的Web內容發布
5.2 Xang - 快速開發動態網頁
5.3 Slide - 內容管理框架
5.4 Struts - 基于M
VC
設計模式
的JSP
5.5 Jetspeed - 基于Web的組件
5.6 Turbine - 基于Servlet的Web應用開發
5.7 各種Framework比較
6. JSP Framework - Struts介紹
6.1 1、什么是MVC模式。
6.2 2、是否所有JSP應用都該采用MVC模式?
6.3 3、Struts中能做XML嗎,與Cocoon相比有何優點?
7. Struts的安裝
7.1 安裝Struts需要的軟件
7.2 通過源碼構造Structs
7.3 通過Struts的二進制發布包安裝Structs
--------------------------------------------------------------------------------
5. servlet/jsp/xml Frameworks介紹
現在,已經有眾多的基于Java的開源Web Framework,讓我們能更加容易構造Web應用。我在這里給大家作一個簡單的介紹。
5.1 Cocoon - 基于XML的Web內容發布
Cocoon是采用100%純Java編寫的一個內容發布框架。Cocoon讓你能采用W3C的最新技術(DOM、XML、XSL)來提供Web內容。
新的Cocoon模式能將文檔內容、樣式、處理邏輯進行完全的分離,允許這三層能獨立地設計、創建和管理,從而減少了管理開銷,加強了工作的重用性,減少了開發時間。
下載地址:http://xml.apache.org/cocoon
5.2 Xang - 快速開發動態網頁
Xang能整合不同的數據源,讓你能快速地開發數據
驅動
的、跨平臺的Web應用。Xang體系結構能將數據、邏輯和表示完全劃清。Xang基于開放的工業標準,例如HTTP、XML、XSL、DOM、ECMAScript(JavaScrip)。
下載地址:http://xml.apache.org/xang
5.3 Slide - 內容管理框架
Slide是一個內容管理和集成系統,是一個內容管理底層框架。Slide提供了一個分級的結構,能將內容存儲到任意的、分布式的
數據倉庫
。出此之外,Slide還集成了安全、鎖定、內容版本和其他一些服務。
下載地址:http://jakarta.apache.org/slide
5.4 Struts - 基于MVC設計模式的JSP
Struts是采用Java Servlet/JavaServer Pages技術,開發Web應用程序的開放源碼的framework。
采用Struts能開發出基于MVC(Model-View-Controller)設計模式的應用構架。
Struts有如下的主要功能:
1. 包含一個controller servlet,能將用戶的請求發送到相應的Action對象。
2. JSP自由tag庫,并且在controller servlet中提供關聯支持,幫助開發員創建交互式表單應用。
3. 提供了一系列實用對象:XML處理、通過Java reflection APIs自動處理JavaBeans屬性、國際化的提示和消息。
下載地址:http://jakarta.apache.org/struts
5.5 Jetspeed - 基于Web的組件
Jetspeed是實現了Enterprise Information Portal的開源軟件。Jetspeed能從Internet的縱多資源中提取信息,來幫助用戶管理大量的數據。這些信息能來自不同的內容類型,從XML到XMTP,到iCalendar這些新協議。
下載地址:http://java.apache.org/jetspeed
5.6 Turbine - 基于Servlet的Web應用開發
Turbine是基于servlet的framework,使有經驗的Java開發員能快速地構建web應用。
使用Turbine,可以通過創建使用特定服務來處理模板的Screen,來集成現有的模板技術(例如Velocity、Webmacro、Java Server Pages(JSP)、FreeMarker、Cocoon)。
下載地址:http://java.apache.org/turbine
5.7 各種Framework比較
在這些framework中,我覺得Cocoon、Struts和Turbine比較好。這三者各有所長,Cocoon是最好的XML Framework,Struts是最好的JSP Framework,Turbine是最好的Servlet Framework。
--------------------------------------------------------------------------------
6. JSP Framework - Struts介紹
Struts是采用Java Servlet/JavaServer Pages技術,開發Web應用程序的開放源碼的framework。
采用Struts能開發出基于MVC(Model-View-Controller)設計模式的應用構架。
Struts有如下的主要功能:
1. 包含一個controller servlet,能將用戶的請求發送到相應的Action對象。
2. JSP自由tag庫,并且在controller servlet中提供關聯支持,幫助開發員創建交互式表單應用。
3. 提供了一系列實用對象:XML處理、通過Java reflection APIs自動處理JavaBeans屬性、國際化的提示和消息。
Struts是Jakarta項目的一部分,主頁在http://jakarta.apache.org/struts.
Version 0.5的下載地址:http://jakarta.apache.org/builds/jakarta-struts/release/v0.5
6.1 1、什么是MVC模式。
MVC(Model/View/Controller)模式是國外用得比較多的一種設計模式,好象最早是在Smaltalk中出現。MVC包括三類對象。Model是應用對象,View是它在屏幕上的表示,Controller定義用戶界面對用戶輸入的響應方式。
6.2 2、是否所有JSP應用都該采用MVC模式?
不一定所有的JSP應用都該采用MVC模式。但對于大型應用來說,我認為還是該采用MVC模式。不使用MVC模式,用戶界面界面設計往往將這些對象混在一起,而MVC則將它們分離以提高靈活性和復用性。
6.3 3、Struts中能做XML嗎,與Cocoon相比有何優點?
Struts把主要精力放在JSP上了。Cocoon才是專業級的XML Framework。
--------------------------------------------------------------------------------
7. Struts的安裝
7.1 安裝Struts需要的軟件
Java Development Kit - 你需要download和install 1.2(或之后)版本的JDK。下載地址:http://java.sun.com/
J2SE
Servlet Container - 通常的選擇是下載Tomcat(至少是3.1版,推薦使用3.2版)。下載地址:http://jakarta.apache.org/tomcat
Ant Build System - 如果你通過Struts源碼發布包安裝,你必須下載1.1或之后版本的ant build system。在你通過Struts來開發你自己的Web應用程序是,我也推薦使用ant來build你的應用。下載地址:http://jakarta.apache.org/ant
Servlet API Classes - 為了編譯Structs自己,或應用程序使用Struts,你需要一個包含Servlet和JSP API對象的servlet.jar包。大多數Servlet container(例如Tomcat)已經自帶了這個文件。否則,你必需下載:http://jakarta.apache.org/builds/jakarta-servletapi
XML Parser - Structs需要一個與Java API for XML Parsing(JAXP)規格兼容的XML處理器。我推薦使用Xerces。下載地址:http://xml.apache.org/xerces-j
Xalan XSLT Processor - 如果你通過Structs源碼發布版來構造你的Structs系統,你必須下載和安裝1_2_D01或之后版本的Xalan XSLT處理器(Xerces中已自帶Xalan)。這個處理器用于將基于XML的Structs文檔轉換為Html文檔。
7.2 通過源碼構造Structs
1.下載Structs的源碼發布包。
2.設置ANT_HOME環境變量,指向你的Ant目錄。
3.設置JAVA_HOME環境變量,指向你的JDK目錄。
4.設置SERVLETAPI_HOME環境變量,指向你的Servlet API目錄(如果你的CLASSPATH已經包含了servlet.jar,就不需要指定該目錄)
5.將Structs的源碼發布包進行解包。
6.進入Structs目錄,運行以下命令:
./build.sh dist
該命令將創建Struts的二進制發布包,目錄在../dist/structs(相對于你的編譯目錄)。
7.3 通過Struts的二進制發布包安裝Structs
1.下載Struts的二進制發布版。
2.將Struts的二進制發布版進行解包。(如果你是通過Struts源碼構造Struts,build的結果就已經是已解包的Struts)。解包后的Struts包含以下內容:
lib/struts.jar - 這個文件包含了Struts的所有Java對象。你需要把它拷貝到你的Web應用的WEB-INF/lib目錄。
lib/structs.tld - 這是一個"tag library descriptor"文件,它描述了Struts庫的自由tag。需要將它拷貝到你的Web應用的WEB-INF目錄。
webapps/struts-documentation.war - 這是一個"web application archive"文件,包含了所有的Struts文檔。你可以將它安裝到支持Servlet API 2.2或之后版本的servlet container(推薦使用tomcat)中。
webapps/struts-example.war - 這是一個web應用實例,它廣泛地演示了Struts的許多功能。你可以將它安裝到兼容Servlet2.2或之后版本以及JSP1.1或之后版本規范的servlet容器中(推薦使用tomcat)。
webapps/struts-test.war - 這個web應用包含了Struts支持的許多tag的測試網頁,可以作為使用Struts tag的例子。
可通過以下的步驟在你自己的應用程序中使用Struts:
1.將Struts目錄的lib/struts.jar拷貝到web應用的WEB-INF/lib目錄。
2.將Struts目錄的lib/struts*.tld拷貝到web應用的WEB-INF目錄。
3.修改Web應用目錄的WEB-INF/web.xml文件,增加一個元素來定義controller servlet,增加一個元素來建立URI請求與servlet的對應關系。可以參照Struts例子中的WEB-INF/web.xml文件來了解詳細的語法要求。
4.修改Web應用目錄的WEB-INF/web.xml文件,使之包含以下的tag庫定義:
/WEB-INF/struts.tld
/WEB-INF/struts.tld
/WEB-INF/struts-bean.tld
/WEB-INF/struts-bean.tld
/WEB-INF/struts-logic.tld
/WEB-INF/struts-logic.tld
5.創建一個WEB-INF/action.xml文件來定義你的web應用的action映射關系。可以參照Struts例子中的action.xml文件來了解詳細的語法要求。
6.在使用Struts tag庫的JSP網頁中加入以下tag庫定義:
<@ taglib uri="/WEB-INF/struts.tld" prefix="struts" %>
<@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
7.最后,在編譯你的web應用的java程序時,不要忘了在CLASSPATH中包含struts.jar文件喲。
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
30 | 31 | 1 | 2 | 3 | 4 | 5 | |||
6 | 7 | 8 | 9 | 10 | 11 | 12 | |||
13 | 14 | 15 | 16 | 17 | 18 | 19 | |||
20 | 21 | 22 | 23 | 24 | 25 | 26 | |||
27 | 28 | 29 | 30 | 31 | 1 | 2 | |||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
歡迎探討,努力學習Java哈
常用鏈接
留言簿(3)
隨筆分類
- Java(11)
- JSP
- MyEclipse(1)
- Oracle 10g(3)
- Resin
- Spring
- SQL(4)
- Struts(1)
- Tomcat
- XML(2)
- 個人日志(1)
- 學習(5)
- 工作(1)
- 搜索引擎(7)
- 灌水(1)
- 貼圖
- 軟件工程
隨筆檔案
文章分類
文章檔案
Lansing's Download
Lansing's Link
我的博客
搜索
最新評論

- 1.?re: 關于ODBC數據源連接文本
- 評論內容較長,點擊標題查看
- --棱語明
- 2.?re: Oracle 10g TO_DATE() ora-01830 領悟共勉[未登錄]
- 評論內容較長,點擊標題查看
- --訪客
- 3.?re: Oracle 10g TO_DATE() ora-01830 領悟共勉
- 人才啊!
- --歲月無聲
- 4.?re: Struts框架技術在J2EE中的研究和應用[未登錄]
- dfetetgfgf
- --aa
- 5.?re: 關于ODBC數據源連接文本 [未登錄]
-
“坐在巷口的那對男女”呵呵 @blackbat
- --lansing