應當盡量避免使用JSPs實現復雜邏輯;那種程序也許容易寫,但難以調試而且幾乎不可能被理解和維護。好的解決方案是用JSPs負責Web頁面的顯示(這正是JSPs擅長的),把復雜邏輯的實現交給Java,如對數據庫的訪問。這樣,程序不但比較容易實現和調試,而且易于理解和維護。
這個Web應用程序可以運行在專用Web服務器或者是個人電腦上,操作系統可以是Windows,Linux,或者Mac OS。所需的軟件包有Java運行時環境(JDK1.2或以上版本),Tomcat最新版本(Tomacat 4或以上版本),以及Ant開發工具(Ant 1.4或以上版本)。Ant用于創建Web應用程序包(WAR),以及在Tomcat上安裝部署WAR文件,配置關系數據庫接口javax.sql.DataSource。所有以上提到的軟件包都可以通過Internet免費獲得。
【IT168技術文檔】這個Web應用程序還需要一個數據庫。幾乎所有支持SQL而且有JDBC驅動的關系數據庫都可以。MySQL是一個符合條件的不錯選擇。從MySQL.com可以得到MySQL的最新版本以及它的JDBC驅動Connector/J。
為了讓Ant與Tomact管理軟件協同工作,需要將catalina-ant.jar從Tomcat的server/lib目錄拷貝到Ant的lib目錄下。將你的數據庫JDBC驅動程序復制到Tomcat的common/lib目錄下使Tomcat和其上的Web應用程序可以訪問數據庫。最后,必須建立Tomcat的admin和manager角色(roles),及其用戶名和密碼,編輯Tomcat的conf目錄下的tomcat-user.xml文件如下:
<?xml version='1.0'?>
<tomcat-users>
<role rolename="admin"/>
<role rolename="manager"/>
<user username="tomcatusername" password="tomcatpassword"
roles="admin,manager"/>
</tomcat-users>
我的開發環境是Apple Cube,運行Mac OS X 10.2.1操作系統,軟件包JDK 1.3.1,Tomcat 4.1.12,Ant1.5.1,MySQL 3.23.52,及Connector/J 3.0.1-beta。操作系統升級到Mac OS X 10.2.2未出現任何問題。同樣Tomcat升級到4.1.17也沒出現問題。
Web應用程序
本文通過一個叫做AddressBook的簡單地址簿程序來說明如何應用將要介紹的技術。這個應用程序的目的不是建立一個地址簿的正式版本,它僅僅是一個例子。
AddressBook中的Java程序
AddressBook中包含三個Java程序。圖1顯示了他們在Tomcat中的是如何使用的。

AddressBook.ContextListener
AddressBook.ContextListener是一個servlet上下文監聽器,它在AddressBook開始和關閉時被調用,可以使用AddressBook的部署描述文件web.xml配置。當AddressBook開始運行時,創建一個AddressesDB的實例并將它作為一個上下文屬性保存;而當AddressBook運行結束時,從上下文屬性中取出AddressesDB對象并關閉數據庫連接。在運行過程中,當JSPs需要連接數據庫,它們將訪問上下文屬性中的AddressesDB對象。
這個Web應用程序可以運行在專用Web服務器或者是個人電腦上,操作系統可以是Windows,Linux,或者Mac OS。所需的軟件包有Java運行時環境(JDK1.2或以上版本),Tomcat最新版本(Tomacat 4或以上版本),以及Ant開發工具(Ant 1.4或以上版本)。Ant用于創建Web應用程序包(WAR),以及在Tomcat上安裝部署WAR文件,配置關系數據庫接口javax.sql.DataSource。所有以上提到的軟件包都可以通過Internet免費獲得。
【IT168技術文檔】這個Web應用程序還需要一個數據庫。幾乎所有支持SQL而且有JDBC驅動的關系數據庫都可以。MySQL是一個符合條件的不錯選擇。從MySQL.com可以得到MySQL的最新版本以及它的JDBC驅動Connector/J。
為了讓Ant與Tomact管理軟件協同工作,需要將catalina-ant.jar從Tomcat的server/lib目錄拷貝到Ant的lib目錄下。將你的數據庫JDBC驅動程序復制到Tomcat的common/lib目錄下使Tomcat和其上的Web應用程序可以訪問數據庫。最后,必須建立Tomcat的admin和manager角色(roles),及其用戶名和密碼,編輯Tomcat的conf目錄下的tomcat-user.xml文件如下:
<?xml version='1.0'?>
<tomcat-users>
<role rolename="admin"/>
<role rolename="manager"/>
<user username="tomcatusername" password="tomcatpassword"
roles="admin,manager"/>
</tomcat-users>
我的開發環境是Apple Cube,運行Mac OS X 10.2.1操作系統,軟件包JDK 1.3.1,Tomcat 4.1.12,Ant1.5.1,MySQL 3.23.52,及Connector/J 3.0.1-beta。操作系統升級到Mac OS X 10.2.2未出現任何問題。同樣Tomcat升級到4.1.17也沒出現問題。
Web應用程序
本文通過一個叫做AddressBook的簡單地址簿程序來說明如何應用將要介紹的技術。這個應用程序的目的不是建立一個地址簿的正式版本,它僅僅是一個例子。
AddressBook中的Java程序
AddressBook中包含三個Java程序。圖1顯示了他們在Tomcat中的是如何使用的。

AddressBook.ContextListener
AddressBook.ContextListener是一個servlet上下文監聽器,它在AddressBook開始和關閉時被調用,可以使用AddressBook的部署描述文件web.xml配置。當AddressBook開始運行時,創建一個AddressesDB的實例并將它作為一個上下文屬性保存;而當AddressBook運行結束時,從上下文屬性中取出AddressesDB對象并關閉數據庫連接。在運行過程中,當JSPs需要連接數據庫,它們將訪問上下文屬性中的AddressesDB對象。
延伸閱讀
文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/