欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Tomcat入門

系統 2201 0

本章將演示如何開發、部署和運行由主流轉換JavaBeans 組件和用JavaServer Pageh(JSP)創建的Web頁面客戶端組成的簡單Web應用。該應用首先部署并運行在Apache Software Foundation(www.apache.org)開發出來的Java Servlet和JSP容器,即Tomcat上,且與Java Web Services Developer Pack(Java WSDP)包含在一起。本章作為引言,介紹了如何利用Tomcat部署Web服務和Web應用。本章中的材料為該教程中其他章節提供了基礎。

設置


注意:在開始開發示例應用前,將先閱讀關于該教程中的說明,然后繼續本節的學習。

獲取示例代碼

該示例的源代碼可以在<JWSDP_HOME>/docs/tutorial/examples/gs/,即解壓該教程的捆綁包時所創建的一個目錄中找到。如果想在線閱讀該教程,可以從下面的地址下載教程捆綁包:

示例代碼的布局

在該示例應用中,源代碼目錄按照“實現Web服務程序設計的最佳做法”來組織,這些最佳做法的更多細節描述在<JWSDP_HOME>/docs/tomcat/appdev/deployment.html文件中。基本上而言,這個文檔說明了在創建Web應用時檢查它的運行時結構很有用。Web應用被定義為標準布局中目錄和文件的分層結構。這樣的分層結構可以通過它的未包裝格式訪問,其中在這種格式中每一個目錄和文件分別位于單獨的文件系統中,或者以Web應用檔案(或WAR)文件這樣的包裝格式存在。前一種格式在開發期間更有用,而后者通常用在分發應用以便安裝時。

為了便于創建所需格式的WAR文件,最好布置一下Tomcat在執行與WAR格式本身所需結構相同的應用時所使用的文件。在該示例應用中,<JWSDP_HOME>/docs/tutorial/examples/gs/是該應用源代碼的根目錄。該應用由如下文件組成,其中這些文件位于/gs目錄或者/gs的子目錄中。

  • /src/converterApp/ConverterBean.java——包含 yenAmount euroAmount屬性的get和set方法的 JavaBeans組件,其中這兩個屬性用來將美元轉換為日元并將日元轉換到歐元。

  • /web/index/jsp——Web客戶端,它是一個接受將被轉換的值的JavaServlet頁面、提交該值的按鈕,以及該轉換的結果。

  • /web/WEB-INT/web.xml——該應用的部署描述符。在該簡單示例中,它包含示例應用的一個描述。

  • Build.xml——利用Ant工具創建和部署Web應用的生成文件。

關于WAR文件的更多信息可以在Web應用檔案中找到。

Tomcat應用開發指南中一個關鍵的建議是從包含可部署應用的目錄分層中分離出包含源代碼的目錄分層。進行這種分離有以下優點:

  • 如果該應用的可執行版本沒有混合在一起,源目錄的內容就可以更簡單的管理、轉移、和備份。

  • 源代碼控制在僅包含源文件的目錄上更容易管理。

  • 當該部署分層被隔離時,組成應用可安裝分發的文件更容易選中。

如 創建Ant的生成和部署文件一節中所述,Ant開發工具使得這種目錄分層的創建和處理變得相對簡單。

該文檔的其余部分演示了如何創建、構建、部署和運行該示例應用。

設置路徑變量

在PATH環境變量的前面添加Java WSDP、Java2軟件開發工具包和標準版(J2SE,SDK)的bin目錄,以便Tomcat的Java WSDP啟動腳本覆蓋其他的安裝,這一點非常重要。

另外,大多數例子是和Ant 1.5.1版的配置文件一起分發的,其中Ant是包含在Java WSDP中的一個可移植的生成工具。這個與Java WSDP一起發布的Ant的版本設置了jwsdp.home環境變量,這是示例生成文件所必須的。為保證能使用該Ant版本,必須在

PATH前面添加 < JWSDP_HOME >/jakarta-ant-1.5.1/bin

創建生成屬性文件

為了調用更多的Ant任務,需要在主目錄內布置命名為build.properties文件。在Solaris操作系統上,主目錄的格式通常為/home/your_login_name。在Windows操作環境中(例如Windows 2000)主目錄一般是c:\Document and Settings\yourProfile。

Build.properties文件包含的純文本格式的用戶名和密碼與安裝期間設置的用戶名和密碼匹配。在Java WSDP的安裝期間輸入的用戶名和密碼存儲在<JWSDP_HOME>/conf/tomcat-users.xml中。

出于安全目的,Tomcat Manager在同意你訪問服務器之前,首先要驗證你(定義在build.properties文件中)是否有權安裝和重載這些應用(定義在tomcat-user.xml中)

如果還沒有在主目錄中創建build.properties文件,那么可以這么做。文件將如下所示:

      username=
      
        
          your_username
        
      
    
      password=
      
        
          your_password
        
      
      
      
    

注意:出于安全目的,需要創建只有你自己才能讀取的build.properties文件。

安裝程序創建的Tomcat-users.xml文件如下所示:

      <?xml version='1.0'?>
    
      <tomcat-users>
    
      <role rolename="admin"/>
    
      <role rolename="manager"/>
    
      <role rolename="provider"/>
    
      <user username="
      
        
          your_username
        
      
      " password="
      
        
          your_password
        
      
      "
    
      ?????roles="admin,manager,provider"/>
    
      </tomcat-users>
      
      
    

快速概覽

既然已經為運行該示例應用而下載了應用程序并得到了環境設置,本小節將簡單地介紹運行該應用程序所需的步驟。每步討論的詳細細節可在相關頁面中找到。

1.遵循 設置 中的步驟。

2.改變該應用的目錄<JWSDP_HOME>/docstutorial/examples/gs(見 創建Getting Started應用 )。

3.通過在終端提示窗口中輸入下列命令編譯源文件(見 使用Ant構建Getting Started應用 ):

?? ant build

?? 編譯錯誤 一節中列出了其中可能出現的編譯錯誤。

?????? ?????4.通過在終端提示窗口中輸入下列命令啟動Tomcat(見 啟動Tomcat

??????????????? <JWSDP_HOME>/bin/startup.sh????????(Unix platform)

<JWSDP_HOME>\bin\startup???????????(Microsoft Windows)

??????????? 5.通過在終端提示窗口中輸入下列命令來利用Ant部署Web應用(見 使用Ant安裝應用程序

?????????????? ant install

?????????????? 部署中出現的錯誤見 部署錯誤

??????????? 6.啟動Web瀏覽器,輸入下列URL運行示例應用程序(見 運行Gerzring Started應用程序 ):

??????? ????????http://localhost:8080/GSApp

?????????? 7.通過在終端提示窗口中輸入下列命令關閉Tocmat:(見 關閉Tomcat

????????????? <JWSDP_HOME>/bin/shutdown.sh????????(Unix platform)

<JWSDP_HOME>\bin\shutdown???????????(Microsoft Windows)

創建Getting Started應用

示例應用程序包含ConverterBean類、Web組件、用來構建并運行應用程序的文件,以及部署描述符。對于本示例,我們將創建一個命名為gs/的頂級項目源目錄。該示例應用程序中的所有文件都創建自這個根目錄。

ConverterBean組件

該示例程序中ConverterBean組件通常與JSP頁面結合起來使用,其結果應用是一個能夠將美元轉換成日元并將日元轉換成歐

元的表單。ConverterBean組件的源代碼在<JWSDP_HOME>/doca/tutorial/example/gs/src/converterApp/目錄內。

ConverterBean組件編碼

該示例中的ConverterBean組件包含兩個屬性,yenAmount和euroAmount,以及這些屬性的set和get方法。ConverterBean組件的源代碼如下:

      //ConverterBean.java
    
      package converterApp;
    
      ?
    
      import java.math.*;
    
      ?
    
      public class ConverterBean{
    
      ?
    
      ??private BigDecimal yenRate;
    
      ??private BigDecimal euroRate;
    
      ??private BigDecimal yenAmount;
    
      ??private BigDecimal euroAmount; 
    
      ?
    
      ??/** Creates new ConverterBean */
    
      ??public ConverterBean() {
    
      ????yenRate = new BigDecimal ("138.78");
    
      ????euroRate = new BigDecimal (".0084");
    
      ????yenAmount = new BigDecimal("0.0");
    
      ????euroAmount = new BigDecimal("0.0");
    
      ??}
    
      ??public BigDecimal getYenAmount () {
    
      ????return yenAmount;
    
      ??}
    
      ??public void setYenAmount(BigDecimal amount) {
    
      ????yenAmount = amount.multiply(yenRate);
    
      ????yenAmount =? yenAmount.setScale(2,BigDecimal.ROUND_UP);
    
      ??}
    
      ??public BigDecimal getEuroAmount () {
    
      ????return euroAmount;
    
      ??}
    
      ??public void setEuroAmount (BigDecimal amount) {
    
      ????euroAmount = amount.multiply(euroRate);
    
      ????euroAmount = 
    
      ??????euroAmount.setScale(2,BigDecimal.ROUND_UP);
    
      ??}
    
      }
      
      
    

Web客戶端

Web客戶端包含在JSP頁面<JWSDP_HOME>/docs/tutorial/examples/gs/web/index.jap中。JSP頁面是包含靜態和動態內容的基于文本的文檔。靜態內容能表示成基于任何文本格式的模板數據,比如HTML、WML、或者XML格式。JSP元素構成了動態內容。

Web客戶端編碼

JSP頁面index.jsp用來創建表單,該表單在應用的客戶端運行時出現在Web瀏覽器中。JSP頁面是靜態HTML標記和JSP元素的典型混合體。如果開發過Web頁面,應該熟悉創建表單<form>和菜單<select>的HTML文檔結構聲明(<head>,<body>,等等)和HTML聲明。示例中的這些突出行包含了下列JSP結構類型:

·?? 指示( <%@page ... %> )ConverterBean類中的導入類,并且設置頁面返回的內容類型。

·?? 這個jsp:usebean元素聲明頁面將使用存儲在指定作用域內并可從該作用域訪問的一個bean。默認的作用域是頁面,因此

我們就不明確在示例中設置它。

·?? jsp:setProperty元素 用來設置JSP頁面中的JavaBean組件屬性。

·?? Jsp.getProperty元素用來檢索JSP頁面中的JavaBean組件。

·?? Scriplets(<% ...% >)檢索amount請求參數的值,將其轉換成BigDecimal,并且將該值轉換為日元或者歐元。

·?? 表達式(<% = ...% >)將amount的值插入到響應中。

Index.jsp源代碼如下:

      <%-- index.jsp --%>
    
      <%@ page import="converterApp.ConverterBean,java.math.*" %>
    
      <%@ page contentType="text/html; charset=ISO-8859-5" %>
    
      ?
    
      <html>
    
      <head>
    
      <title>Currency Conversion Application</title>
    
      </head>
    
      ?
    
      <body bgcolor="white">
    
      "<jsp:useBean id="converter" 
    
      class="converterApp.ConverterBean"/>
    
      ?
    
      <h1><FONT FACE="ARIAL" SIZE=12>Currency Conversion Application 
    
      </FONT></h1>
    
      <hr>
    
      <p><FONT FACE="ARIAL" SIZE=10>Enter an amount to convert:</p> 
    
      </FONT>
    
      <form method="get">
    
      <input type="text" name="amount" size="25">
    
      <br>
    
      <p>
    
      <input type="submit" value="Submit">
    
      <input type="reset" value="Reset">
    
      </form>
    
      <%
    
      String amount = request.getParameter("amount");
    
      ?
    
      if ( amount != null && amount.length() > 0 ) {
    
      ?
    
      %>
    
      <p><FONT FACE="ARIAL" SIZE=10><%= amount %> dollars are? 
    
      ?
    
      <jsp:setProperty name="converter" property="yenAmount" 
    
      value="<%= new BigDecimal(amount)%>" />
    
      <jsp:getProperty name="converter" property="yenAmount"? /> Yen. 
    
      ?
    
      <p><%= amount %> Yen are
    
      ?
    
      <jsp:setProperty name="converter" property="euroAmount" 
    
      value="<%= new BigDecimal(amount)%>" />
    
      <jsp:getProperty name="converter" property="euroAmount"? /> 
    
      Euro. </FONT>
    
      ?
    
      <% 
    
      } 
    
      %>
    
      ?
    
      </body>
    

</html>

Tomcat入門


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 999热在线视频 | 日本三级香港三级乳网址 | 欧美日在线 | 玖玖国产 | 丝袜美腿中文字幕 | 国产精品久久久久影院色老大 | 欧美精品在线观看视频 | 日本在线观看不卡 | 天天看高清特色大片 | 天堂资源地址在线 | 国产精品黄大片观看 | 欧美日本国产 | 免费看片网址 | 日本午夜高清视频 | 日韩精品视频在线观看免费 | 天天躁夜夜躁很很躁麻豆 | 亚洲精品在线视频观看 | 高清不卡一区二区 | 三级精品 | 精品久 | 国产视频一区二区在线观看 | 天天色天天综合 | xvideos korean| 天天干天天操天天透 | 成人一区二区丝袜美腿 | 天天操天天擦 | 毛片资源 | 欧美精品久久久久久久久久 | 草草影院永久地址 | 中文字幕免费 | 一级做一级爱a做片性视频视频 | 亚洲精品一区二区网址 | 国产剧情一区二区三区 | 欧美国产日韩在线观看 | 国产成人不卡 | 国产精品免费观看 | 免费精品久久 | 99热久久这里只有精品首页 | 久久亚洲国产精品无码一区 | 日本阿v无码观看dvd | 亚洲一区二区三区在线免费观看 |