正在加载图片...
資料讀取 <table border"0"width="100% cellpadding="5 cellspacing="1> <td bgcolor="#FFFFFF"class="petstore> <e: for Each var="item"items-Sicatalog categories list"> <a href"category. screen? category id=<c: out value='S(item id) <c:out value='S(item name"P> </c forEach> </tr> </table> 這段程式碼乃本篇文章的重頭戲ν功用是將資料從資料庫( Cloudscape)取 出·置入先前設置好的 catalog JavaBean,再從 catalog javabean取所霈資料組成 HTML將’重點在於< c for Each'這個JSTL自訂標籤’這一段有點複雜’筆者著 實花了不少時間·且聽我慢慢說來’<c: forEach>從這個標籤字面可推敲,它的功 用是將取得資料筆筆倒出,可達到 Petstore多個寵物分類的效果,它的資料來 源是透過 Items="${ catalog categories. list}"取得。初次看到 catalog. categories.list 筆者當場傻眼’這是什麼啊!經過伃細推敲’它就是 catalog. getCategorieso) getListo’現在我們來看看 catalog是如何取得寵物分類資 料,請開啓 Petstore homelsrclcomponents\catalog srcIcom sunlj2eeblueprintslcatalogclient\Cat alog Helper. java 在約197列地方會看到下列函式( Method) public Page getCategorieso 'atal n return use FastLane get Categories FromDAO(start, count, locale) get Categories FromEJB(start, count, locale) use Fastlane在 Catalog Helper初始化時的預設值駑true,它的功用決定資料 讀取路徑’直接透過JDBC或透過EJB,前者是目前使用的方式,它要求三個參 數’在 sidebar. jsp前面程式碼已設定好ν它的優點是讀取效能好’缺點是不易雜 護,因鳥資料讀取(在 Javabean)及資料更新(在EB)的程式碼分散;後者的優缺 點正好與前者顛倒,在此筆者僅介紹透過JBC的方式’若讀者想試試透過EJB資料讀取 <table border="0" width="100%" cellpadding="5" cellspacing="1"> <tr> <td bgcolor="#FFFFFF" class="petstore"> <c:forEach var="item" items="${catalog.categories.list}" > <a href="category.screen?category_id=<c:out value="${item.id}" />"> <c:out value="${item.name}" /> </a> <br> </c:forEach> </td> </tr> </table> 這段程式碼乃本篇文章的重頭戲,功用是將資料從資料庫(Cloudscape)取 出,置入先前設置好的 catalog JavaBean,再從 catalog JavaBean 取所需資料組成 HTML 將,重點在於<c:forEach>這個 JSTL 自訂標籤,這一段有點複雜,筆者著 實花了不少時間,且聽我慢慢說來,<c:forEach>從這個標籤字面可推敲,它的功 用是將取得資料一筆筆倒出,可達到 Petstore 多個寵物分類的效果,它的資料來 源是透過 items="${catalog.categories.list}"取得。初次看到 catalog.categories.list 筆者當場傻眼,這是什麼啊!經過仔細推敲,它就是 catalog.getCategories().getList(),現在我們來看看 catalog 是如何取得寵物分類資 料,請開啟 Petstore_home\src\components\catalog\src\com\sun\j2ee\blueprints\catalog\client\Cat alogHelper.java 在約 197 列地方會看到下列函式(Method): public Page getCategories() throws CatalogException { return useFastLane ? getCategoriesFromDAO(start, count, locale) : getCategoriesFromEJB(start, count, locale); } useFastLane 在 CatalogHelper 初始化時的預設值為 true,它的功用決定資料 讀取路徑,直接透過 JDBC 或透過 EJB,前者是目前使用的方式,它要求三個參 數,在 sidebar.jsp 前面程式碼已設定好,它的優點是讀取效能好,缺點是不易維 護,因為資料讀取(在 JavaBean)及資料更新(在 EJB)的程式碼分散;後者的優缺 點正好與前者顛倒,在此筆者僅介紹透過 JDBC 的方式,若讀者想試試透過 EJB
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有