亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

NetBeans Visual Web Pack 5.5 入門指南

系統(tǒng) 2529 0

NetBeans Visual Web Pack 5.5 入門指南

<!-- END VNV3 PAGETITLE, two-level variation --><!-- BEGIN WRAPPER TABLE, 2 COLUMN, MAIN/RIGHT -->
<!-- BEGIN CENTRAL COLUMN COMPONENTS --><!--startindex--><!-- ============ --><!-- MAIN CONTENT --><!-- ============ --> <!-- BEGIN VCD4 BYLINE AND TOOLS -->
2006 年 12 月 [修訂號:V1-2]
<!-- END VCD4 BYLINE AND TOOLS --><!-- BEGIN VCD1 OVERVIEW COMPONENT -->

本教程是 Netbeans Visual Web Pack 的快速指南,它向您介紹了如何使用 Visual Web Pack 功能對 Web 應(yīng)用程序的各個典型階段進行開發(fā)。

由于本教程的設(shè)計使然,因此您不必按任何特定的順序來學習它。您可以快速地瀏覽本教程,然后在時間允許時返回學習各個部分。如果您希望閱讀循序漸進的教程,則可以先嘗試閱讀 開發(fā) Web 應(yīng)用程序

<!-- END VCD1 OVERVIEW COMPONENT -->
<!-- BEGIN VCD5 ANCHOR LINKS COMPONENT -->

目錄

- 本教程所需的軟件
- 啟動項目
- 創(chuàng)建 Web 頁
- 將組件添加到 Web 頁
- 獲取幫助
- 生成并測試 Web 應(yīng)用程序
- 連接 Web 頁并處理用戶操作
- 編輯 Java 代碼
- 處理用戶輸入
- 存儲和傳遞數(shù)據(jù)
- 連接數(shù)據(jù)庫
- 調(diào)試 Web 應(yīng)用程序

<!-- END VCD5 ANCHOR LINKS COMPONENT -->

本教程使用以下資源

NetBeans Visual Web Pack 5.5 可使用所有支持的服務(wù)器以及 Java EE 1.4 和 Java EE 5 平臺。本教程向您介紹了 Visual Web Pack 功能,這些功能將使用下表中帶有復(fù)選標記的資源。有關(guān)支持的服務(wù)器和 Java EE 平臺的詳細信息,請參見 NetBeans Visual Web Pack 5.5 安裝說明

應(yīng)用服務(wù)器 Sun Java System Application Server 9
Tomcat
JBoss
BEA WebLogic
JavaServer Faces 組件/
Java EE 平臺
1.2/Java EE 5*
1.1/J2EE 1.4
Travel 數(shù)據(jù)庫 對于某些部分來說是必需的
BluePrints AJAX 組件庫 不是必需的

* 只有 Sun Java System Application Server 支持 Java EE 5

啟動項目

項目相當于 Web 應(yīng)用程序的工作環(huán)境。在 IDE 中創(chuàng)建 Visual Web 應(yīng)用程序項目時,IDE 將為 JavaServer Faces (JSF) Web 應(yīng)用程序建立基礎(chǔ)架構(gòu)。缺省情況下,IDE 將在符合 Java BluePrints Web 應(yīng)用程序項目約定的目錄結(jié)構(gòu)內(nèi)創(chuàng)建 JSF 1.2 Web 應(yīng)用程序。

注意: 本教程中的所有步驟均基于缺省 Visual Web Pack 項目,該項目使用 JSF 1.2 和 Java EE 5。

要創(chuàng)建 Visual Web 應(yīng)用程序項目,請從主菜單中選擇“文件”>“新建項目”,選擇 "Web" 類別,然后選擇“Visual Web 應(yīng)用程序”項目類型。


試試看
  1. 使用以下列表中的相應(yīng)步驟來啟動 IDE:

    • Windows。 雙擊 NetBeans 桌面圖標。
    • Mac。 雙擊安裝文件夾中的 NetBeans 圖標。
    • Solaris 操作系統(tǒng)(SPARC 和 x86 平臺版本)和 Linux。 導(dǎo)航至 NetBeans 安裝的 bin 目錄,鍵入 ./netbeans ,然后按 Enter 鍵。
  2. 單擊“運行環(huán)境”標簽,或者從主菜單中選擇“窗口”>“運行環(huán)境”將“運行環(huán)境”窗口置于前端。
  3. 通過從主菜單中選擇“文件”>“新建項目”來創(chuàng)建一個項目。在“類別”窗格中選擇 "Web",然后在“項目”窗格中選擇“Visual Web 應(yīng)用程序”。
  4. 單擊“下一步”。
  5. 選擇一個服務(wù)器,然后選擇 Java EE 版本。
  6. 單擊“完成”接受缺省的項目名稱和位置。

    缺省情況下,IDE 將在 home 目錄下創(chuàng)建項目目錄 <Web 應(yīng)用程序名稱>
  7. 瀏覽“項目”窗口。如下圖所示,“項目”窗口將按類別對項進行分組。展開每個節(jié)點,查看各類別中有哪些類型的項。請注意在應(yīng)用程序 Bean 節(jié)點旁邊顯示的標記。該標記表示需要對此文件進行編譯。IDE 將在生成項目時自動編譯這些文件。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 1: “項目”窗口
    <!-- END FIGURE COMPONENT -->
  8. “Web 頁”節(jié)點的下方是 "Page1.jsp" 節(jié)點。缺省情況下,IDE 會創(chuàng)建此頁并將其作為起始頁。該節(jié)點旁邊的箭頭標記用于標識該頁為起始頁。如果要將其他頁用作起始頁,請右鍵單擊該頁的節(jié)點,然后從彈出式菜單中選擇“設(shè)置為起始頁”。
  9. 單擊“文件”標題,或者從主菜單中選擇“窗口”>“文件”將“文件”窗口置于前端。此窗口按各項的物理存儲進行組織。展開節(jié)點可查看其結(jié)構(gòu)。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 2: “文件”窗口
    <!-- END FIGURE COMPONENT -->
  10. 在圖 2 中,請注意 "WebApplication1" > "src" > "java" > "webapplication1" > "Page1.java" 節(jié)點。此 Java 類是 Page1.jsp 文件的 支持 Bean 。每當您將頁面添加到項目時,IDE 都會為該頁創(chuàng)建 .jsp 文件和 .java 文件。在下一部分,您將了解有關(guān) .jsp .java 文件的更多信息。

詳細信息

  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”> "Visual Web Pack" >“Visual Web 應(yīng)用程序項目入門指南”>“關(guān)于 Visual Web 應(yīng)用程序項目”。

創(chuàng)建 Web 頁

對于 Visual Web 應(yīng)用程序,應(yīng)使用 JavaServer Pages (JSP) 和 頁面 Bean(也稱為支持 Bean)而不是 HTML 頁。JSP 頁是一個模板,服務(wù)器可通過它來生成要在瀏覽器(客戶端)中顯示的 HTML 響應(yīng)。頁面 Bean 包含服務(wù)器在生成 HTML 響應(yīng)時執(zhí)行的邏輯。頁面 Bean 還包含服務(wù)器在用戶提交頁面后執(zhí)行的邏輯。

在 Visual Web 應(yīng)用程序中添加 Web 頁時,IDE 將創(chuàng)建 JSP 文件和 Java 源文件。通常會使用可視設(shè)計器和“屬性”窗口來開發(fā) Web 頁。IDE 將修改 JSP 代碼和 Java 代碼以實現(xiàn)您所設(shè)計的內(nèi)容。其中的大部分工作都可以在可視設(shè)計器和“屬性”窗口中完成。

注意: IDE 生成的 JSP 頁是 JSP 文檔。JSP 文檔是 XML 文檔,因此必須 具有正確的格式 。盡管大多數(shù) JSP 元素遵循 XML 語法,但還有某些元素不符合 XML 規(guī)范,如注釋、聲明、指令、表達式和 scriptlet。有關(guān) JSP 文檔語法的相關(guān)信息,請參見 JavaServer Pages 語法參考


試試看

  1. 在“項目”窗口中,右鍵單擊“Web 頁”節(jié)點,然后選擇“新建”>“頁”,如下圖所示。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 3: 右鍵單擊“Web 頁”節(jié)點
    <!-- END FIGURE COMPONENT -->
  2. 接受缺省名稱 Page2,然后單擊“完成”。IDE 將在可視編輯器中打開 Page2(位于編輯區(qū)域),如下圖所示。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 4: 可視設(shè)計器
    <!-- END FIGURE COMPONENT -->
  3. 單擊編輯工具欄中的 "Java" 按鈕以查看頁面 Bean 的源代碼,如下圖所示。當編輯區(qū)域顯示 Java 源代碼時,將出現(xiàn)“導(dǎo)航”窗口。此窗口列出了所有的成員字段和方法。請注意,頁面的源代碼具有訪問應(yīng)用程序 Bean、會話 Bean 和請求 Bean 的方法。有關(guān)這三種類型的 Bean 的說明,請參見本教程的 存儲和傳遞數(shù)據(jù) 部分。

    <!-- BEGIN FIGURE COMPONENT -->

    圖 5 :頁面 Bean 的 Java 源代碼
    <!-- END FIGURE COMPONENT -->
  4. 源代碼還具有在某些生命周期事件過程中調(diào)用的方法,這些事件發(fā)生在請求頁面之后、完成頁面呈現(xiàn)之前的一段時間內(nèi)。

    提示: 在“導(dǎo)航”窗口中雙擊某個成員,插入點將定位在編輯區(qū)域中該成員聲明的源代碼上。您還可以在“導(dǎo)航”窗口中單擊鼠標,然后開始鍵入成員名稱的前幾個字符以彈出“快速搜索”對話框。繼續(xù)鍵入,直至 IDE 突出顯示列表中的所需條目,然后按 Enter 鍵以定位到匹配成員聲明的源代碼,如下圖所示。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 6: “導(dǎo)航”窗口中的“快速搜索”
    <!-- END FIGURE COMPONENT -->
  5. 單擊編輯工具欄中的 "JSP" 按鈕以查看頁面的 JSP 代碼,如下圖所示。請注意 JSP 頁是如何使用 JSP 文檔語法的。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 7: JSP 視圖
    <!-- END FIGURE COMPONENT -->
  6. 在編輯工具欄中單擊“設(shè)計”按鈕,可以切換到可視設(shè)計器,并在“概要”窗口中顯示頁面的表示形式,如下圖所示。請注意 JSP 文件中的標記如何在“概要”窗口中表示為節(jié)點。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 8: “概要”窗口
    <!-- END FIGURE COMPONENT -->

詳細信息


將組件添加到 Web 頁

通過將組件從“組件面板”窗口拖放到可視設(shè)計器中的 Web 頁上,可以設(shè)計一個 Web 頁。下圖顯示了 Page2,其中包含“按鈕”、“文本字段”、“消息”、“下拉列表”和“單選按鈕組”組件。所有這些組件都是從組件面板的“基本”類別中獲得的,并且已經(jīng)通過更改它們的屬性進行了定制。您可以在本部分的后面部分了解有關(guān)屬性的信息。

<!-- BEGIN FIGURE COMPONENT -->
圖 9: 可視設(shè)計器中的組件
<!-- END FIGURE COMPONENT -->

注意: 組件面板中提供的組件是 JSF 組件,已根據(jù) 設(shè)計時 API 對其進行了改進,因此在可視設(shè)計器和“屬性”窗口中都具有這些屬性。您可以在使用 IDE 構(gòu)建的 Web 應(yīng)用程序中使用其他組件,但無法在這些組件上使用 IDE 的交互式設(shè)計時功能,除非已根據(jù)設(shè)計時 API 要求對其進行了定制。如果將 Java EE 版本設(shè)置為 Java EE 5(缺省),則組件面板將提供 JSF 1.2 組件。如果在創(chuàng)建項目時將 Java EE 版本設(shè)置為 1.3 或 1.4,則組件面板將提供 JSF 1.1 組件。

您使用的大多數(shù)組件都位于“組件面板”窗口的“基本”、“布局”和“組合”類別中。以下各表顯示了一些最常用的組件。

表 1:輸入組件

組件 描述 組件面板類別
文本字段 單行文本的輸入字段。 基本
文本區(qū)域 多行文本的輸入字段。 基本
口令字段 輸入字段,將輸入字符回顯為屏蔽輸入內(nèi)容的替換字符。 基本
日歷 具有一個彈出式日歷的輸入字段,用戶可以從彈出式日歷中選擇日期。 基本
下拉列表 下拉菜單,也稱為組合框。 基本
列表框 用戶可以從中選擇一項或多項的列表,項選擇的多少取決于組件的配置方式。 基本
復(fù)選框 單字符框,用戶可以選中或取消選中它。 基本
單選按鈕 用戶可以選中單選按鈕。 基本
添加刪除列表 兩個包含按鈕的列表(一個顯示可用選項,另一個顯示選定選項),這些按鈕用于在列表間移動選項并對選定選項進行排序。 組合
文件上載 該組件具有一個文本輸入字段和一個“瀏覽”按鈕(顯示一個用于指定要上載的文件的文件選擇器)。當用戶提交頁時,應(yīng)用程序?qū)⑸陷d指定的文件。 基本

表 2:顯示組件

組件 描述 組件面板類別
靜態(tài)文本 用于顯示文本的字段。 基本
標簽 可以與輸入字段關(guān)聯(lián)以及可以為其指定弱、中或強字體樣式的文本字段。 基本
圖像 內(nèi)聯(lián)圖像。 基本
消息 鏈接到特定組件以顯示有關(guān)該組件的驗證錯誤和其他消息的文本字段。 基本
消息組 用于顯示運行時錯誤消息、程序生成的錯誤消息以及(可選)有關(guān)頁面上組件的驗證錯誤和其他消息的文本字段。 基本
警報 顯示一個圖標以及信息性文本(如警告、錯誤或某個事件已成功完成)。 組合
頁面警報 與“警報”組件類似,但是用于在單獨的頁面上顯示圖標和信息。 布局

表 3:分組組件

組件 描述 組件面板類別
復(fù)選框組 在網(wǎng)格布局中顯示兩個或兩個以上的復(fù)選框。 基本
單選按鈕組 在網(wǎng)格布局中顯示兩個或兩個以上的單選按鈕,并確保一次只能選中一個按鈕。 基本
表、表行組和表列 顯示復(fù)合數(shù)據(jù)類型的數(shù)據(jù),如數(shù)據(jù)庫表或數(shù)組。 基本
樹和樹節(jié)點 以樹狀結(jié)構(gòu)呈現(xiàn)可展開的列表。 基本
標簽集和標簽 在同一頁中顯示不同的布局。也可以將其用作導(dǎo)航工具。 布局
網(wǎng)格面板 在行和列的布局內(nèi)組織組件。 布局
組面板 以流布局模式將一組組件劃分在一起。 布局
布局面板 以流布局模式或網(wǎng)格布局模式將一組組件劃分在一起。 布局
屬性表單、屬性表單部分和屬性 快速設(shè)置單列標簽組件,并將組件進行分類。 布局
Breadcrumbs 設(shè)置一系列由右尖括號 (>) 分隔的鏈接組件布局。 組合
頁面片段框 將始終顯示在兩個或多個頁上的組件劃分在一起。 布局

表 4:操作組件

組件 描述 組件面板類別
按鈕 用于提交關(guān)聯(lián)表單的按鈕。 基本
超級鏈接 用于提交 URL 或表單的文本字段。 基本
圖像超級鏈接 用于提交 URL 或表單的圖像。 基本
樹節(jié)點 樹或樹節(jié)點的子組件。(可選)葉樹節(jié)點可以提交 URL 或表單。 基本
標簽 標簽集或標簽的子組件。(可選)標簽可以提交 URL 或表單。 組合

使用“屬性”窗口中的組件屬性表單,可以更改組件的外觀和行為,將組件綁定到數(shù)據(jù),以及將組件與事件處理程序關(guān)聯(lián)。

下圖顯示了“列表框”組件的屬性。

<!-- BEGIN FIGURE COMPONENT -->
圖 10: “屬性”窗口中的列表框?qū)傩?
<!-- END FIGURE COMPONENT -->

試試看

打開按照“創(chuàng)建 Web 頁”部分中的 試試看 建議創(chuàng)建的 Page2,或者在必要時創(chuàng)建該頁面。

從“組件面板”窗口的“基本”類別和“布局”類別中拖動各種組件,并試用其屬性。例如,嘗試執(zhí)行以下步驟:

  1. 將一個“按鈕”組件拖動到該頁面上,鍵入 Click Me! ,然后按 Enter 鍵。在“屬性”窗口中,請注意其 text 屬性如何具有值 Click Me! 。在“屬性”窗口中,選中 primary 屬性的復(fù)選框,并注意按鈕外觀的變化。
  2. 將一個“文本字段”組件拖動到該頁面上。接下來,將一個“標簽”組件拖動到該頁面上,鍵入 Name: ,然后按 Enter 鍵。按住 Ctrl-Shift 組合鍵在“標簽”組件內(nèi)部單擊鼠標,并拖動一條連線到“文本字段”組件。請注意現(xiàn)在“標簽”組件的 for 屬性如何被設(shè)置為“文本字段”組件的 id 屬性。將 labelLevel 設(shè)置為“強 (1)”。
  3. 將一個“消息”組件拖動到“文本字段”組件的右側(cè)。按住 Ctrl-Shift 組合鍵,同時從“消息”組件拖動一條連線到“文本字段”組件。與“標簽”組件一樣,請注意現(xiàn)在“消息”組件的 for 屬性如何被設(shè)置為“文本字段”組件的 id 屬性。
  4. 將一個“下拉列表”組件拖動到該頁面上,并將其 label 屬性設(shè)置為 Color 。右鍵單擊“下拉列表”組件,然后選擇“配置缺省選項”以顯示“選項定制器”。
  5. 按 Tab 鍵以進入“顯示”列中“項 1”的編輯模式,然后鍵入 Blue 。按兩次 Tab 鍵,將“項 2”更改為 White 。再按兩次 Tab 鍵,將“項 3”更改為 Green 。單擊“確定”,并請注意您的更改如何影響可視設(shè)計器中的組件。
  6. 使用與“下拉列表”組件類似的步驟,創(chuàng)建一個具有選項 Blue、White 和 Red 的“單選按鈕組”組件。

    此外,在“選項定制器”中選中“選擇項”復(fù)選框,并在“選定”列中選中其中一個單選按鈕,以設(shè)置其缺省選項。單擊“確定”應(yīng)用更改并關(guān)閉“選項定制器”。在“屬性”窗口中,將 columns 屬性設(shè)置為 3 以使單選按鈕水平對齊而不是垂直對齊。
  7. 右鍵單擊該頁面中的空白處,然后選擇“在瀏覽器中預(yù)覽”以查看您的瀏覽器如何呈現(xiàn)組件。

詳細信息


獲取幫助

IDE 提供了一個“幫助”查看器,其中包含了有關(guān) IDE 的幫助主題。此外,在窗口、對話框或組件面板組件上按 F1 鍵時,將出現(xiàn)“幫助”查看器,并顯示有關(guān)該項的信息。要訪問 Visual Web Pack 幫助主題(包括有關(guān)組件的幫助),請從主菜單中選擇“幫助”>“幫助內(nèi)容”,然后滾動到 Visual Web Pack。

IDE 還提供了一個“動態(tài)幫助”窗口,其中顯示了指向當前窗口或?qū)ο蟮南嚓P(guān)幫助主題的鏈接。在“動態(tài)幫助”窗口中雙擊鏈接時,IDE 將在相應(yīng)的查看器中顯示信息,如瀏覽器、“幫助”查看器或 Javadoc 查看器。


試試看
  1. 在可視設(shè)計器的頁面中添加一個“標簽”組件。請注意“動態(tài)幫助”窗口中的主題。
  2. 在頁面中添加一個“下拉列表”組件。請注意“動態(tài)幫助”窗口中的新主題。
  3. 在“動態(tài)幫助”窗口中,雙擊“下拉列表組件”節(jié)點以在“幫助”查看器中查看主題。關(guān)閉“幫助”查看器。
  4. 在“下拉列表”組件的“屬性”窗口中單擊鼠標。按 F1 鍵查看有關(guān)“下拉列表”組件屬性的主題。
  5. 在組件面板的“基本”類別中選擇“文本字段”組件節(jié)點。按 F1 鍵查看有關(guān)“文本字段”組件的幫助主題。

生成并測試 Web 應(yīng)用程序

當準備開始測試項目時,請按 F6 鍵,或者從主菜單中選擇“運行”>“運行主項目”。IDE 將執(zhí)行以下操作:

  • 保存所有需要保存的文件。
  • 編譯所有需要編譯的文件。

    如果出現(xiàn)了問題,IDE 將在“輸出”窗口(如下所示)顯示相關(guān)的錯誤消息,并且不會繼續(xù)執(zhí)行“生成并運行”進程。單擊錯誤消息中的鏈接可轉(zhuǎn)至具有編譯錯誤的源代碼。
  • 如果尚未啟動應(yīng)用服務(wù)器,請將其啟動。
  • 將應(yīng)用程序部署到應(yīng)用服務(wù)器上。

    如果出現(xiàn)了任何問題,IDE 將在“輸出”窗口中顯示相關(guān)的錯誤消息,并且不會繼續(xù)執(zhí)行“生成并運行”進程。
  • 打開瀏覽器,將已部署的應(yīng)用程序的 URL 發(fā)送到瀏覽器,并由瀏覽器來顯示起始頁。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 11: “輸出”窗口
    <!-- END FIGURE COMPONENT -->

如果進行了大量的更改,刪除了若干項,或者出現(xiàn)一些異常行為,則可以從主菜單中選擇“生成”>“清理并生成主項目”。IDE 將清除項目的 build 目錄和 dist 目錄,并取消部署 Web 應(yīng)用程序,然后生成并部署應(yīng)用程序。


試試看
  1. 如果項目包含的頁面少于兩個,請右鍵單擊“項目”窗口中的“Web 頁”節(jié)點并選擇“新建”>“頁”來創(chuàng)建一個新頁面。
  2. 在可視設(shè)計器中打開起始頁(帶有綠色箭頭標記的頁面)。
  3. 將一個“超級鏈接”組件拖動到頁面上,鍵入 Next Page ,然后按 Enter 鍵。
  4. 在“超級鏈接”組件的“屬性”窗口中,單擊 url 屬性的省略號按鈕 (...),在項目中選擇一個不同的頁面,然后單擊“確定”。請注意 IDE 如何將 url 屬性設(shè)置為 /faces/ page-name .jsp
  5. 按 F6 鍵以生成并運行 Web 應(yīng)用程序。
  6. 在生成過程中,查看在“輸出”窗口中顯示的消息。還要注意,在服務(wù)器標簽中顯示了來自服務(wù)器日志的輸出。
  7. 請注意 IDE 發(fā)送到瀏覽器的 URL。
  8. 當瀏覽器中出現(xiàn)起始頁時,單擊 "Next Page" 鏈接。
  9. 在“運行環(huán)境”窗口中,依次展開“服務(wù)器”、服務(wù)器節(jié)點、“應(yīng)用程序”和“Web 應(yīng)用程序”,您會注意到其中包含您的項目節(jié)點,如下圖所示。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 12: 部署的 Web 應(yīng)用程序
    <!-- END FIGURE COMPONENT -->

詳細信息

  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”> "Visual Web Pack" >“Visual Web 應(yīng)用程序項目入門指南”>“構(gòu)建和編譯”>“構(gòu)建 Visual Web 應(yīng)用程序項目”。

連接 Web 頁并處理用戶操作

當用戶鍵入 URL、單擊鏈接或單擊按鈕時,瀏覽器會向服務(wù)器發(fā)送這些請求。服務(wù)器將該請求映射到 JSP 頁,并使用此 JSP 頁及其關(guān)聯(lián)的頁面 Bean 來呈現(xiàn)響應(yīng)。

您可以使用以下兩種方法之一來指定頁面導(dǎo)航:

  • 將一個鏈接組件(如“超級鏈接”組件、“樹節(jié)點”組件或“標簽”組件)添加到頁面,并將組件的 url 屬性設(shè)置為 /faces/ page-name .jsp 。使用 url 屬性進行導(dǎo)航時,將不會提交表單數(shù)據(jù)。Web 應(yīng)用程序只是導(dǎo)航到目標位置。

    注意: 樹節(jié)點組件必須嵌套在樹組件或樹節(jié)點組件內(nèi)。標簽組件必須嵌套在標簽集組件或標簽組件內(nèi)。
  • 您可以使用頁面導(dǎo)航編輯器將操作映射到頁,并使用可視設(shè)計器和 Java 源代碼編輯器來創(chuàng)建操作處理方法。在使用操作處理方法進行頁面導(dǎo)航時,將會提交表單數(shù)據(jù)并在 Web 應(yīng)用程序?qū)Ш降街付繕宋恢弥皩ζ溥M行處理。

要訪問頁面導(dǎo)航編輯器,請在可視設(shè)計器中右鍵單擊頁面中的空白處,然后選擇“頁面導(dǎo)航”。頁面導(dǎo)航編輯器將顯示項目中所有頁面的頁面圖標。在頁面導(dǎo)航編輯器中單擊某個頁面圖標時,將展開該頁面,并顯示其所有的操作組件(操作組件是具有 action 屬性的組件,如“按鈕”、“超級鏈接”或“標簽”)。每個組件旁邊有一個連線端口。通過將連線端口拖到頁面圖標上,可以在該操作的請求和要呈現(xiàn)為響應(yīng)的頁面之間創(chuàng)建映射。松開鼠標按鈕時,IDE 將添加該連接的可視化表示,如下圖中帶有 nextPage 標簽的連接所示。

<!-- BEGIN FIGURE COMPONENT -->
圖 13: 頁面導(dǎo)航編輯器

注意: 在提交頁面時,Web 應(yīng)用程序?qū)⒃趫?zhí)行 action 方法之前執(zhí)行轉(zhuǎn)換和驗證。如果轉(zhuǎn)換或驗證失敗,則不會調(diào)用 action 方法。在開發(fā)過程中,您應(yīng)該在頁面上放置“消息組”組件,以便捕獲任何意外的轉(zhuǎn)換或驗證錯誤,這些錯誤會阻止 action 方法的調(diào)用。


試試看
  1. 創(chuàng)建兩個頁面,并將它們分別命名為 LinkPage1 和 LinkPage2。將 LinkPage1 作為起始頁。
  2. 將一個“超級鏈接”組件拖動到 LinkPage1 上,鍵入 Next Page ,然后按 Enter 鍵。
  3. 將一個“按鈕”組件拖動到 LinkPage2 上,鍵入 Go ,然后按 Enter 鍵。
  4. 雙擊“按鈕”組件以訪問按鈕的 action 方法。

    請注意,action 方法將返回 null。當 action 方法返回 null 時,應(yīng)用程序?qū)⒅匦嘛@示頁面。
  5. 單擊編輯區(qū)域中的“設(shè)計”以切換到可視設(shè)計器。
  6. 在可視設(shè)計器中,右鍵單擊 LinkPage2 中的空白處,然后選擇“頁面導(dǎo)航”。
  7. 在頁面導(dǎo)航編輯器中,單擊 LinkPage1.jsp 圖標以展開該頁面圖標,然后將 hyperlink1 組件的連線端口拖到 LinkPage2.jsp 圖標上以創(chuàng)建一個鏈接。
  8. 雙擊 Case1 連線標簽以變?yōu)榫庉嬆J剑p擊 Case1 以選擇該文本,鍵入 nextPage ,然后按 Enter 鍵。
  9. 使用類似的步驟,創(chuàng)建一個從 LinkPage2.jsp 上的按鈕返回到 LinkPage1.jsp 的連線,并將該連線命名為 go
  10. 在編輯工具欄中單擊 "XML" 以查看部署到服務(wù)器上的實際映射 XML,然后關(guān)閉頁面導(dǎo)航編輯器;當系統(tǒng)詢問您是否保存更改時,請單擊“保存”。
  11. 在 LinkPage2 中,雙擊“按鈕”組件以訪問按鈕的 action 方法。

    請注意,現(xiàn)在 action 方法將返回字符串 "go",在頁面導(dǎo)航編輯器中創(chuàng)建的映射指示服務(wù)器在 LinkPage2.jsp 返回 "go" 時顯示 LinkPage1.jsp。
  12. 按 F6 鍵運行應(yīng)用程序,然后試一試新的頁面導(dǎo)航。

詳細信息

  • 設(shè)置頁面導(dǎo)航
  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”> "Visual Web Pack" >“參考”>“編輯器”>“關(guān)于頁面導(dǎo)航編輯器”。

編輯 Java 代碼

IDE 的 Java 編輯器包含用于簡化編程過程的各種功能,其功能遠不止在本基礎(chǔ)教程中討論的這些。下面的編輯功能示例列表僅僅是其中的一小部分。

  • 代碼完成。 通過代碼完成,您可以鍵入幾個字符,然后從可能的類、方法、變量等列表中進行選擇以自動完成表達式。要顯示代碼完成框,請按 Ctrl-空格鍵。在包名、變量或方法調(diào)用后鍵入句點等待,也會出現(xiàn)代碼完成框,如下圖所示。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 14: 代碼完成框
    <!-- END FIGURE COMPONENT -->
  • Javadoc。 代碼完成功能還會顯示任何相關(guān)的 Javadoc。此外,您可以右鍵單擊類型、字段或方法,然后選擇“顯示 Javadoc”以查看該項的 Javadoc(如果有該 Javadoc)。要查看可用的 Javadoc,請選擇“幫助”>“Javadoc 引用”。也可以按 Shift-F1 組合鍵以顯示 Javadoc 索引搜索工具。
  • 修復(fù)導(dǎo)入。 按 Alt-Shift-F 組合鍵可自動添加所需的 import 語句。
  • 錯誤檢測。 在不能編譯的所有語句的左旁注處都將出現(xiàn)紅色的錯誤框。將鼠標懸停在該錯誤框上可看到錯誤描述,如下圖所示。IDE 還會在右旁注處顯示錯誤帶區(qū)。此帶區(qū)表示整個文件,而不是只表示可見的代碼行。錯誤帶區(qū)中的紅線用來標識代碼中的錯誤。雙擊紅線可跳到錯誤的語句。編譯文件時,所有編譯錯誤都將出現(xiàn)在“輸出”窗口中。單擊錯誤消息可在 Java 編輯器中顯示錯誤代碼。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 15 :錯誤檢測
    <!-- END FIGURE COMPONENT -->
  • Java 編輯器快捷鍵。 使用簡單的鍵組合可以調(diào)用許多常見的編輯任務(wù),如以下示例所示。要了解有關(guān)快捷鍵的詳細信息,請從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”>“IDE 基礎(chǔ)知識”>“快捷鍵”>“編輯器快捷鍵”。

    <!-- BEGIN VCD8 DATA TABLE COMPONENT --> 操作 快捷鍵
    重新設(shè)置代碼格式 Ctrl-Shift-F
    刪除當前行 Ctrl-E
    將插入點移動到匹配的方括號 Ctrl-[
    選擇位于光標左側(cè)的方括號所包含的塊 Ctrl-Shift-[
    詞語匹配:向下和向上 Ctrl-L、Ctrl-K
  • 縮寫。 縮寫是在按空格鍵時展開為完整的詞或短語的簡短字符組,如以下示例所示。要查看完整的縮寫列表,請選擇“工具”>“選項”>“高級選項”>“編輯”>“編輯器設(shè)置”>“Java 編輯器”,然后單擊“縮寫”屬性旁邊的省略號 ( ... ) 按鈕。

    <!-- BEGIN VCD8 DATA TABLE COMPONENT --> 代碼 縮寫
    for (Iterator it = collection.iterator(); it.hasNext();)
    {Object elem = (Object) it.next();}
    forc
    for (int i = 0; i < arr.length; i++) {} fori
    try {|} catch (Exception ex)
    {log("Error Description", ex); } finally {}
    trycatch
  • 代碼片段。 打開 Java 源代碼編輯器時,“組件面板”窗口將提供許多有用的代碼片段,您可以將這些代碼片段拖放到源文件上。在本版本中,不會為受管 Bean 源文件顯示代碼片段,如應(yīng)用程序 Bean 或請求 Bean 的源文件。
  • 自動注釋工具。 選擇“工具”>“自動注釋”可打開用于添加 Javadoc 注釋的對話框。
  • 快速搜索。 如果您在“導(dǎo)航”窗口中單擊并開始鍵入方法或字段的名稱,將出現(xiàn)“快速搜索”對話框,并且 IDE 會突出顯示列表中的第一個匹配條目。按 Enter 鍵可在 Java 源代碼中定位該條目的聲明。

試試看

注意: 以下練習要求您在 destroy 方法中鍵入代碼。鍵入的代碼是用來說明編輯功能的。通常是不需要按照上述操作在此方法中放置代碼的。完成這些步驟后,請刪除該代碼。

  1. 創(chuàng)建一個頁面或打開一個現(xiàn)有的頁面。將一個“超級鏈接”組件拖放到該頁面上。單擊編輯工具欄中的 "Java" 以顯示 Java 源代碼。
  2. 在左旁注處單擊鼠標右鍵,然后選擇“顯示行號”。在 Java 源代碼中按 Ctrl-G 組合鍵,在“轉(zhuǎn)至行”對話框中鍵入 50,然后按 Enter 鍵。在源代碼中單擊鼠標右鍵,然后從彈出式菜單中選擇“轉(zhuǎn)至”。請注意可以從子菜單中訪問的操作。
  3. 在“導(dǎo)航”窗口中,雙擊 destroy() 以定位到該方法的源代碼上。在 destroy() 方法中,鍵入 getSessionBean1(). ,然后暫停。將出現(xiàn)代碼完成框。鍵入 d 可看到該框?qū)⒘斜砜s小為 destroy() 。按 Enter 鍵以使用該選擇。鍵入 ; ,然后按 Enter 鍵。現(xiàn)在,鍵入 this.getH ,等待代碼完成框出現(xiàn)。如果沒有出現(xiàn)代碼完成框,請按 Ctrl-空格鍵以打開代碼完成框。將光標向下移到 getHyperlink1() ,然后按 Enter 鍵。鍵入句點,等待代碼完成框出現(xiàn),然后鍵入 set 。在代碼完成框?qū)⒘斜矸秶s小為以 set 開頭的所有方法后,鍵入 te 將列表范圍縮小為 setText(Object text) ,然后按 Enter 鍵。IDE 將在句點后面插入 setText() ,并將光標停留在圓括號內(nèi)。鍵入 "hello" ,按 End 鍵,然后鍵入 ;
  4. 另起一行,鍵入 serr ,然后按空格鍵將該縮寫展開為 System.err.println("") 。刪除行尾的分號。按 F9 鍵以編譯文件。“輸出”窗口將顯示幾個指向錯誤的鏈接。單擊該窗口中出現(xiàn)的第一個鏈接。IDE 將顯示導(dǎo)致錯誤的語句。重新鍵入剛才刪除的分號。
  5. 另起一行,鍵入 getSes ,然后按 Ctrl-K 組合鍵。IDE 將該字符串替換為當前行上面的源代碼中第一個匹配的單詞。
  6. 要清除代碼,請將光標放置在 destroy 方法主體的第一行上,然后按 Ctrl-E 組合鍵刪除該行。使用 Ctrl-E 組合鍵刪除方法主體中的其余行。
  7. 將鼠標懸停在編輯工具欄中的圖標上,并試用每個圖標執(zhí)行操作。
  8. 在 Java 源代碼中單擊鼠標右鍵,然后從彈出式菜單中選擇“代碼折疊”。嘗試執(zhí)行子菜單中的各種操作。
  9. 嘗試從組件面板中拖動代碼片段,以查看它們所提供的內(nèi)容。

詳細信息

  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”>“Java 項目基礎(chǔ)知識”>“編輯源文件”>“關(guān)于編輯源文件”。
  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”>“IDE 基礎(chǔ)知識”>“快捷鍵”>“編輯器快捷鍵”。

處理用戶輸入

IDE 提供了驗證器和轉(zhuǎn)換器對象,以幫助您檢查輸入和設(shè)置格式。在組件面板中,可以從這些對象各自所在的類別中找到它們。

通過將驗證器拖放到輸入組件(如“文本字段”組件)上,可以將驗證器綁定到輸入組件。例如,將一個“文本字段”組件添加到可視設(shè)計器中的頁面上后,可以將一個“長度驗證器”組件從組件面板的“驗證器”類別拖放到該“文本字段”組件上。

或者,也可以將驗證器拖放到頁面上,然后將輸入組件的 validator 屬性設(shè)置為該驗證器對象。例如,您可以將一個“長型范圍驗證器”組件拖放到頁面上的空白處,這樣會將 longRangeValidator1 添加到“概要”窗口。然后,您可以在可視設(shè)計器中選擇一個輸入組件(如“文本字段”組件),再從其 validatorExpression 屬性的下拉列表中選擇 longRangeValidator1。您可以將相同的驗證器用于多個組件。

驗證器與轉(zhuǎn)換器的機制類似。您還可以將轉(zhuǎn)換器與輸出組件(如“靜態(tài)文本”組件)關(guān)聯(lián)。請注意,將組件綁定到數(shù)據(jù)提供器字段時,將自動完成轉(zhuǎn)換過程。您可以在 連接數(shù)據(jù)庫 部分了解有關(guān)綁定到數(shù)據(jù)提供器的信息。

使用驗證器的“屬性”窗口可以設(shè)置驗證規(guī)則,如最小值和最大值,或最小長度和最大長度。同樣,使用轉(zhuǎn)換器的“屬性”窗口可以設(shè)置轉(zhuǎn)換規(guī)則,如值應(yīng)該匹配的模式或進行驗證而要調(diào)用的方法。“數(shù)值轉(zhuǎn)換器”組件具有一個特殊向?qū)В斈谝淮螌ⅰ皵?shù)值轉(zhuǎn)換器”組件拖放到頁面上或可視組件上時將出現(xiàn)該向?qū)А?

組件面板的“基本”類別提供了“消息”組件和“消息組”組件,這些組件用于自動顯示轉(zhuǎn)換錯誤、驗證錯誤和必填字段消息。“消息組”組件將顯示全局錯誤消息、運行時錯誤和(可選)所有組件錯誤消息。“消息”組件僅顯示它所綁定到的組件的消息。將“消息”組件綁定到其他組件有兩種方法:設(shè)置“消息”組件的 for 屬性,或者在“消息”組件上按住 Ctrl-Shift 組合鍵,同時將鼠標拖動到要綁定“消息”組件的組件。

通過在任何頁面 Bean 中使用 error warn fatal info 方法,可以用編程方式將定制錯誤消息發(fā)送到“消息組”組件。要了解有關(guān)這些方法的詳細信息,請選擇“工具”>“Javadoc 索引搜索”,在下拉列表的文本字段中鍵入 FacesBean ,然后單擊“查找”。


試試看
  1. 創(chuàng)建一個頁面,并將一個“按鈕”組件拖動到該頁面上。將按鈕的 text 屬性設(shè)置為 Go
  2. 將一個“文本字段”組件拖動到該頁面上。在“文本字段”組件的“屬性”窗口中,選中 required 屬性的復(fù)選框。
  3. 將一個“標簽”組件拖放到“文本字段”組件的上方,鍵入 Price: ,然后按 Enter 鍵。
  4. 在“標簽”組件的“屬性”窗口中,從 for 屬性的下拉列表中選擇 "textField1"。請注意可視設(shè)計器中的“標簽”組件如何顯示一個星號以指示其關(guān)聯(lián)的“文本字段”組件是必需要輸入的。
  5. 在組件面板中,展開“驗證器”類別。將一個“雙精度范圍驗證器”組件拖放到“文本字段”組件上。在“概要”窗口中,選擇新創(chuàng)建的 "doubleRangeValidator1" 節(jié)點。在驗證器的“屬性”窗口中,將 maximum 屬性設(shè)置為 10.0 ,并將 minimum 屬性設(shè)置為 1.0 ,如下圖所示。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 16: 雙精度范圍驗證器屬性
    <!-- END FIGURE COMPONENT -->
  6. 在組件面板中,展開“轉(zhuǎn)換器”類別。將一個“數(shù)值轉(zhuǎn)換器”組件拖放到“文本字段”組件上。將出現(xiàn)“數(shù)字格式”對話框,如下圖所示。從“類型”下拉列表中選擇“貨幣”,從“語言環(huán)境”下拉列表中選擇“英文 (美國)”,然后單擊“確定”。

    <!-- BEGIN FIGURE COMPONENT -->
    圖 17: 數(shù)字格式
    <!-- END FIGURE COMPONENT -->
  7. 將一個“消息”組件添加到頁面。在該組件上按住 Ctrl-Shift 組合鍵,同時從其拖動一條連線到“文本字段”組件。

    請注意,IDE 將“消息”組件的 for 屬性設(shè)置為“文本字段”組件的 id 屬性。
  8. 將一個“消息組”組件添加到頁面。
  9. 將該頁設(shè)置為起始頁,然后運行應(yīng)用程序。嘗試在下列情況下單擊按鈕:未輸入任何價格、輸入 1.5 、輸入非數(shù)值以及輸入大于 $10.00 的價格。最后,在文本字段中鍵入 $1.50 ,然后單擊按鈕。

    請注意應(yīng)用程序是如何拒絕所有不符合數(shù)字格式的值以及不在指定范圍內(nèi)的值。請注意在“消息”和“消息組”組件中出現(xiàn)的不同消息。
  10. 請嘗試設(shè)置“消息組”組件的 showGlobalOnly 復(fù)選框。

存儲和傳遞數(shù)據(jù)

可以使用應(yīng)用程序 Bean、會話 Bean 和請求 Bean 來存儲信息以供其他頁面使用。

  • 可以使用應(yīng)用程序 Bean 存儲適用于所有用戶會話的信息,如“下拉列表”組件的靜態(tài)選項列表。
  • 可以使用會話 Bean 存儲在整個用戶會話期間供其他頁面使用的信息,如用戶的登錄名。
  • 如果只需要供下一個頁面使用的信息,則使用請求 Bean。

    請求結(jié)束后,在請求 Bean 中存儲的任何值都會消失。請求是指從客戶端單向傳輸?shù)椒?wù)器的 HTTP 請求以及對應(yīng)的響應(yīng)(可以是其他頁面)。在大多數(shù)情況下,請求都以單擊按鈕或鏈接開始,并以呈現(xiàn) HTML 頁的響應(yīng)作為結(jié)束。

    注意: 僅當啟動請求的頁面在請求 Bean 屬性中存儲值時(如將輸入組件綁定到請求 Bean 屬性時,如下所述),才會實例化請求 Bean。

    警告: 如果將 <redirect> 元素包含在導(dǎo)航規(guī)則的 <navigation-case> 元素中,則不能使用請求 Bean(在頁面導(dǎo)航編輯器中單擊“源”按鈕時,可以看到這些規(guī)則)。提交頁面時, <redirect> 元素會重定向該頁面并結(jié)束請求,接下來,后續(xù)的頁面才能使用請求 Bean 中所存儲的任何值。

要將屬性添加到會話 Bean 中,請在“概要”窗口中右鍵單擊 "SessionBean1" 節(jié)點,然后選擇“添加”>“屬性”。IDE 將為該屬性添加聲明、getter 方法和 setter 方法。該屬性在“概要”窗口中顯示為 "SessionBean1" 下面的子節(jié)點,但通常不會立即顯示。也可以使用類似的步驟向請求 Bean 或應(yīng)用程序 Bean 添加屬性。

請注意,也可以將屬性添加到頁面 Bean(IDE 為每個頁面創(chuàng)建的支持 Bean)中。要將屬性添加到頁面 Bean 中,請在可視設(shè)計器中的頁面空白處單擊鼠標右鍵,然后從彈出式菜單中選擇“添加”>“屬性”。但是,頁面 Bean 的屬性值僅在頁面 Bean 實例化過程中有效。例如,當用戶單擊用于重新呈現(xiàn)頁面的“按鈕”組件(即,action 方法返回 null)時,將創(chuàng)建該頁面 Bean 的一個新實例,并重新初始化頁面 Bean 的屬性值。如果要為傳回操作傳遞值,您可以使用“隱藏字段”組件。

要將組件與 Bean 的屬性關(guān)聯(lián),請右鍵單擊該組件,然后選擇“綁定到數(shù)據(jù)”。在“綁定到數(shù)據(jù)”對話框中,選擇“綁定到對象”標簽,然后選擇 Bean 的屬性,如下圖所示。

<!-- BEGIN FIGURE COMPONENT -->
圖 18: “綁定到數(shù)據(jù)”對話框
<!-- END FIGURE COMPONENT -->

注意: 對于大多數(shù)組件,彈出式菜單提供了兩個綁定操作:“屬性綁定”和“綁定到數(shù)據(jù)”。在“屬性綁定”對話框中,您可以將組件的任何屬性綁定到受管 Bean 屬性或數(shù)據(jù)提供器字段。“綁定到數(shù)據(jù)”對話框是一種快捷方式,用于將組件包含值的屬性綁定到受管 Bean 屬性或數(shù)據(jù)提供器字段。通過使用“綁定到數(shù)據(jù)提供器”標簽,可以綁定到已添加到頁面或受管 Bean 中的任何數(shù)據(jù)提供器。通過使用“綁定到對象”標簽,可以綁定到頁面屬性或受管 Bean 屬性。


試試看
  1. 右鍵單擊“概要”窗口中的 "RequestBean1" 節(jié)點,然后選擇“添加”>“屬性”。將屬性命名為 parm ,將其類型設(shè)置為 String ,然后單擊“確定”。

    請注意,新添加的屬性可能沒有顯示在“概要”窗口中。要顯示該屬性,請在可視設(shè)計器中單擊鼠標右鍵,然后從彈出式菜單中選擇“刷新”。也可以按照以下步驟所述,打開并保存 RequestBean1 源文件使該屬性進行顯示。
  2. 在“概要”窗口中,右鍵單擊“請求 Bean”,然后從彈出式菜單中選擇“編輯 Java 源代碼”。
  3. 滾動到源文件底部以查看 IDE 為屬性添加的 getParm setParm 方法。
  4. 保存并關(guān)閉該文件。
  5. 創(chuàng)建一個名為 First 的頁面,其中包含一個“按鈕”組件和一個“文本字段”組件。
  6. 右鍵單擊“文本字段”組件,然后從彈出式菜單中選擇“綁定到數(shù)據(jù)”。單擊“綁定到對象”標簽,選擇 "RequestBean1" > "parm",然后單擊“確定”。
  7. 創(chuàng)建一個名為 Next 的頁面。添加一個“按鈕”組件和一個“靜態(tài)文本”組件。
  8. 使用與 First 頁上的“文本字段”組件相同的步驟,將 Next 頁上的“靜態(tài)文本”組件綁定到 "RequestBean1" > "parm"。
  9. 在源代碼中單擊鼠標右鍵,然后從彈出式菜單中選擇“頁面導(dǎo)航”。
  10. 在頁面導(dǎo)航編輯器中,創(chuàng)建一個從 First 頁上的“按鈕”組件到 Next 頁的連線。請單獨保留 Next 頁上的“按鈕”組件,因為可以使用此按鈕來重新顯示 Next 頁。
  11. 將 First.jsp 設(shè)置為起始頁,然后運行應(yīng)用程序。輸入一個值,然后單擊按鈕。請注意,Next 頁將顯示您在 First 頁上輸入的值。在后臺,一個 RequestBean1 實例被實例化,用于在 parm 屬性中存儲“文本字段”組件的值。隨后為響應(yīng)(Next 頁的 HTML)檢索該 parm 屬性的值。呈現(xiàn)響應(yīng)后,RequestBean1 實例就被銷毀了。
  12. 單擊 Next 頁上的按鈕可使 Next 頁重新呈現(xiàn)自身。請注意“靜態(tài)文本”組件將不再顯示值。這是因為保存值的 RequestBean1 實例存在的時間僅與請求時間一樣長,該請求在提交 First 頁時開始,在將 Next 頁的 HTML 發(fā)回客戶端時結(jié)束。

連接數(shù)據(jù)庫

“運行環(huán)境”窗口中包含一個“數(shù)據(jù)庫”節(jié)點,該節(jié)點用于顯示在 IDE 中注冊的所有數(shù)據(jù)庫,如下圖所示。Visual Web Pack 提供了一個樣例 TRAVEL 數(shù)據(jù)庫,您將在本教程的其余部分使用該數(shù)據(jù)庫。

<!-- BEGIN FIGURE COMPONENT -->
圖 19: 數(shù)據(jù)源
<!-- END FIGURE COMPONENT -->

在通過項目訪問數(shù)據(jù)庫之前,必須先將 IDE 連接到該數(shù)據(jù)庫。每次啟動 IDE 并打開連接到該數(shù)據(jù)庫的項目時,您必須執(zhí)行此操作。

如果數(shù)據(jù)庫標記顯示為連接中斷,并且無法展開該數(shù)據(jù)庫節(jié)點,則表明 IDE 未連接到該數(shù)據(jù)庫。要連接到 TRAVEL 數(shù)據(jù)庫,請在“運行環(huán)境”窗口中右鍵單擊數(shù)據(jù)庫節(jié)點,然后從彈出式菜單中選擇“連接”。如果出現(xiàn)“連接”對話框,請輸入 travel 作為口令,然后選中“在此會話期間記住口令”。如果沒有看見 TRAVEL 數(shù)據(jù)庫的 jdbc 節(jié)點,請參見 NetBeans Visual Web Pack 安裝說明中的 Visual Web Pack 樣例數(shù)據(jù)庫 部分以了解如何為 IDE 提供可用的數(shù)據(jù)庫。

注意: 如果 Web 應(yīng)用程序使用的服務(wù)器不同于 Sun Java System Application Server,則必須將 derbyclient.jar 文件的副本放在服務(wù)器的庫目錄中。例如,如果要將 TRAVEL 數(shù)據(jù)庫與 Tomcat 一起使用,請將 derbyclient.jar 文件復(fù)制到 netbeans-install-directory /enterprise3/apache-tomcat-5.5.17/common/lib 中。您可以在 Sun Java System Application Server 安裝目錄下面的 javadb/lib/derbyclient.jar 中找到 derbyclient.jar 副本。

當打開現(xiàn)有項目時,可視設(shè)計器會顯示一個錯誤屏幕。通常,這是因為可視設(shè)計器需要獲取數(shù)據(jù)庫中的信息,而 IDE 卻沒有連接到數(shù)據(jù)庫。請嘗試連接到數(shù)據(jù)庫服務(wù)器,并單擊錯誤屏幕中的“繼續(xù)”按鈕以解決該問題。

通過將表從數(shù)據(jù)源部分拖放到頁面上的組件或頁面上時,可以連接頁面與數(shù)據(jù)庫表。在您執(zhí)行此操作時,IDE 會將數(shù)據(jù)提供器添加到頁面,并將行集添加到 SessionBean1 類,如下圖所示。

<!-- BEGIN FIGURE COMPONENT -->
圖 20: 數(shù)據(jù)提供器和行集
<!-- END FIGURE COMPONENT -->

行集對象會建立數(shù)據(jù)庫連接、執(zhí)行查詢以及管理結(jié)果集。數(shù)據(jù)提供器對象會提供一個公共接口,用于獲取多種類型的復(fù)合數(shù)據(jù),其中包括數(shù)據(jù)庫表、ArrayList 對象以及 Enterprise JavaBeans 對象。通常,僅在需要設(shè)置查詢參數(shù)時才使用行集對象。在大多數(shù)情況下,請使用數(shù)據(jù)提供器對象獲取和處理數(shù)據(jù)。

將數(shù)據(jù)提供器添加到項目后,您可以將組件綁定到數(shù)據(jù)提供器,方法是:右鍵單擊該組件,然后選擇“綁定到數(shù)據(jù)”。在“綁定到數(shù)據(jù)”對話框中,單擊“綁定到數(shù)據(jù)提供器”標簽將其置于前端。“選擇數(shù)據(jù)提供器”下拉列表中顯示了項目的所有數(shù)據(jù)提供器,您可以從中選擇要綁定到組件的數(shù)據(jù)提供器。選擇數(shù)據(jù)提供器后,選擇要綁定到組件的相應(yīng)數(shù)據(jù)列。對于某些組件(如“下拉列表”組件),您必須對“值字段”和“顯示字段”都進行選擇。

可以使用行集對象的查詢編輯器定義 SQL 查詢來檢索數(shù)據(jù),如下圖所示。

<!-- BEGIN FIGURE COMPONENT -->
圖 21: 查詢編輯器
<!-- END FIGURE COMPONENT -->
試試看
  1. 創(chuàng)建一個頁面,將其作為起始頁,并將一個“列表框”組件拖放到該頁面上。
  2. 在“運行環(huán)境”窗口中,依次展開“數(shù)據(jù)庫”、TRAVEL 數(shù)據(jù)庫的 jdbc 節(jié)點和“表”節(jié)點。
  3. 將 TRIPTYPE 節(jié)點拖放到頁面上。

    如果 TRAVEL 數(shù)據(jù)庫標記顯示為連接中斷,則無法展開該數(shù)據(jù)庫節(jié)點,表明 IDE 未連接到該數(shù)據(jù)庫。要連接 TRAVEL 數(shù)據(jù)庫,請在“運行環(huán)境”窗口中右鍵單擊數(shù)據(jù)庫節(jié)點,然后從彈出式菜單中選擇“連接”。如果出現(xiàn)“連接”對話框,請輸入 travel 作為口令,選中“在此會話期間記住口令”,然后單擊“確定”。
  4. 右鍵單擊“列表框”組件,然后從彈出式菜單中選擇“綁定到數(shù)據(jù)”。
  5. 在“綁定到數(shù)據(jù)”對話框中,單擊“綁定到數(shù)據(jù)提供器”標簽,并確保在下拉列表中選擇了 "tripTypeDataProvider"。
  6. 將“值字段”設(shè)置為 TRIPTYPE.TRIPTYPEID(缺省選擇),將“顯示字段”設(shè)置為 TRIPTYPE.DESCRIPTION,然后單擊“確定”。
  7. 運行應(yīng)用程序以查看表數(shù)據(jù)是如何填充到列表框的。
  8. 在“概要”窗口中展開 "SessionBean1",然后雙擊 "triptypeRowSet" 節(jié)點以打開其查詢編輯器。在網(wǎng)格面板的 DESCRIPTION 行中,從“排序類型”列的下拉列表中選擇“升序”。
  9. 單擊查詢編輯器標簽中的 X 以關(guān)閉查詢編輯器,然后再次運行程序。請注意各項現(xiàn)在是如何按字母順序顯示的。
  10. (可選)在頁面 Java 源代碼的 _init 方法中找到將數(shù)據(jù)提供器與行集關(guān)聯(lián)的代碼。缺省情況下,此方法處于折疊狀態(tài)。要展開代碼,請單擊左旁注旁邊的代碼折疊框。

    雙擊“項目”窗口中的“會話 Bean”節(jié)點以打開會話 Bean 的 Java 源代碼。查看會話 Bean 的 _init 方法,以了解行集代碼如何實現(xiàn)查詢。右鍵單擊數(shù)據(jù)提供器和行集方法,然后從彈出式菜單中選擇“顯示 Javadoc”以查看有關(guān)方法用途的文檔。
  11. (可選)選擇“幫助”>“Javadoc 引用”>“數(shù)據(jù)提供器”和“幫助”>“Javadoc 引用”>“行集”以查看相關(guān)的 API。

詳細信息


調(diào)試 Web 應(yīng)用程序

IDE 具有一個可幫助您解決程序問題的內(nèi)置調(diào)試器,如下圖所示。您可以使用該調(diào)試器設(shè)置斷點和監(jiān)視、逐步執(zhí)行代碼以及運行至光標所在的代碼語句。

通過在 Java 編輯器的左旁注處單擊鼠標,可以設(shè)置斷點。通過右鍵單擊變量或表達式,然后選擇“新建監(jiān)視”,可以設(shè)置監(jiān)視。要運行該調(diào)試器,請從主菜單中選擇“運行”>“調(diào)試主項目”或“運行”>“運行至光標”。

<!-- BEGIN FIGURE COMPONENT -->
圖 22: “調(diào)試器”窗口
<!-- END FIGURE COMPONENT -->

提示: 下面還介紹了一些其他的功能,您可以使用這些功能來診斷并解決問題:

  • 使用 HTTP 監(jiān)視器可以監(jiān)視客戶端-服務(wù)器通信并重新顯示 HTTP 請求。當頁面包含若干個輸入字段,并且您希望在不必填寫所有字段的情況下重新創(chuàng)建 HTTP 請求,使用重新顯示請求功能會很有幫助。
  • 將一個“消息組”組件添加到頁面,然后使用 error warn fatal info 方法在組件中顯示診斷消息。
  • 使用 log 方法將診斷消息發(fā)送到服務(wù)器日志。

試試看
  1. 創(chuàng)建或重用一個起始頁。添加一個“靜態(tài)文本”組件,將其 text 屬性設(shè)置為 Hello ,并將其 id 屬性設(shè)置為 helloText
  2. 添加一個“按鈕”組件。雙擊該“按鈕”組件以訪問其 action 方法 ( button1_action ),然后將方法的主體替換為以下代碼:

    <!-- BEGIN CODE SAMPLE COMPONENT -->
    代碼樣例 1:button1_action 方法
                            String oldString = (String) this.helloText.getText();
    this.helloText.setText("Good Bye");
    String newString = (String) this.helloText.getText();
    return null;
    
                          
    <!-- END CODE SAMPLE COMPONENT -->
  3. 右鍵單擊 "oldString",選擇“新建監(jiān)視”,然后單擊“確定”。對 newString 執(zhí)行相同的操作。在左旁注處單擊鼠標,為方法主體中的第一個語句設(shè)置一個斷點。
  4. 從主菜單中選擇“運行”>“調(diào)試主項目”。
  5. 當 Web 瀏覽器中顯示頁面時,單擊按鈕。當調(diào)試器在 button1_action 方法內(nèi)中斷時,單擊“調(diào)試器”窗口中的“監(jiān)視”標簽,以查看 newString oldString 的當前值。
  6. 從主菜單中選擇“運行”>“越過”,或者單擊工具欄中的“越過”按鈕。查看“監(jiān)視”標簽。再越過代碼兩次,然后觀察“監(jiān)視”標簽中的“值”列。
  7. 查看“局部變量”和“調(diào)用棧”標簽。
  8. 選擇“運行”>“完成調(diào)試器會話”關(guān)閉調(diào)試器會話。

詳細信息

  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”>“調(diào)試 Java 應(yīng)用程序”。
  • 從主菜單中選擇“幫助”>“幫助內(nèi)容”>“目錄”>“服務(wù)器和數(shù)據(jù)庫”>“HTTP 監(jiān)視器”>“關(guān)于 HTTP 監(jiān)視器”。
  • NetBeans IDE Web 應(yīng)用程序教程中的 運行和監(jiān)視應(yīng)用程序 部分。

小結(jié)

  • 您可以從創(chuàng)建 Visual Web 應(yīng)用程序項目開始構(gòu)建 Web 應(yīng)用程序。
  • 通過從“項目”窗口中選擇“Web 頁”>“新建”>“頁”,可以添加頁面。
  • 將組件從組件面板拖動到可視設(shè)計器中的頁面上,可以設(shè)計該頁面。
  • 單擊主工具欄中的“運行主項目”按鈕,可以保存、生成、部署并運行應(yīng)用程序。
  • 使用頁面導(dǎo)航編輯器可以指定頁面導(dǎo)航。您還可以將鏈接組件添加到頁面,并設(shè)置其 url 屬性的值。
  • 將驗證器和轉(zhuǎn)換器對象拖放到組件上,可以指定格式設(shè)置和驗證規(guī)則。
  • 使用“消息”組件和“消息組”組件可以顯示運行時錯誤消息。
  • 使用 RequestBean1、SessionBean1 和 ApplicationBean1 類中的屬性,可以存儲頁面上的值并在頁面之間傳遞值。
  • 要為數(shù)據(jù)庫表創(chuàng)建數(shù)據(jù)提供器對象及其關(guān)聯(lián)的行集,請將表從“運行環(huán)境”窗口中的“數(shù)據(jù)庫”部分拖到頁面或該頁面的一個組件上。
  • 使用“綁定到數(shù)據(jù)”菜單操作,可以將組件綁定到數(shù)據(jù)提供器字段,以及將組件綁定到 Bean 屬性。
  • 打開行集的查詢編輯器,可以修改用于填充行集對象的 SQL 查詢。
  • 使用調(diào)試器、HTTP 監(jiān)視器、服務(wù)器日志和“消息組”組件可以診斷運行時問題。



FROM:http://www.netbeans.org/kb/55/vwp-intro_zh_CN.html

NetBeans Visual Web Pack 5.5 入門指南


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日本一级特黄视频 | 亚洲精品第一页中文字幕 | 成人小视频在线观看免费 | 午夜性福| 国产成人毛片视频不卡在线 | 99久久国内精品成人免费 | 久久久久青草大香线综合精品 | 羞羞网站在线播放 | 免费看欧美毛片大片免费看 | 亚洲在线久久 | 久久精品爱 | 国产在线看不卡一区二区 | 日本综合在线观看 | 日日碰狠狠添天天爽对白 | 久久久麻豆 | 欧美日韩久久毛片 | 日本精品视频在线 | 久久综合97色综合网 | 深夜精品影院18以下勿进 | 亚洲精品国产福利 | 女人一级一级毛片 | 天天干夜干 | 涩色在线 | 天天爱添天天爱添天天爱添 | 色综合天天综合给合国产 | 在线观看中文字幕 | 精品久久久在线观看 | 国产精品19禁在线观看2021 | 国产精品午夜久久久久久99热 | 色婷婷狠狠久久综合五月 | 成人www| 久久亚洲精中文字幕冲田杏梨 | 国产网红自拍 | 啊用力嗯快国产在线观看 | 美女一级a毛片免费观看 | 亚洲一区精品视频在线 | 久久www视频 | 亚洲一级片在线观看 | 久精品在线观看 | 亚洲一区二区三区视频 | 黄色毛片免费在线观看 |