亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

創建訪問DB2 Everyplace的JSP應用程序

2024-09-05 00:20:06
字體:
來源:轉載
供稿:網友

最大的網站源碼資源下載站,

  db2 everyplace 對 jsp 開發的支持
  db2 everyplace 解決方案由下列組件構成:
  
  數據庫引擎:為移動設備設計的占用資源較少的關系數據庫系統。
  同步服務器:在移動設備上的 db2 everyplace 數據庫和企業數據庫之間移動數據的雙向同步服務器。
  移動應用程序構建器:一個用于創建在移動設備上運行的 db2 everyplace 應用程序的快速應用程序開發工具。
  有關這些組件的更多信息,請參閱文章 使用 db2 everyplace 為 palm 設備創建移動應用程序。
  
  這個關系數據庫引擎為關系數據提供持久存儲并且提供使用 sql 提供修改和檢索記錄的能力??梢杂脦追N不同的方法訪問 db2 everyplace 數據庫中的數據,包括使用命令行處理器(command line processor,clp)發出 sql 語句和使用將 odbc 或 jdbc? 用作調用級接口的應用程序。
  
  此外,db2 everyplace 還提供了用于數據庫訪問的 jsp 支持,可以將這種支持部署在提供了 java? 運行時環境的移動設備上。
  
  jsp 支持可用于下列操作系統:
  
  win32(windows nt? 和 windows 2000)
  windows ce/pocket pc
  使用 java 創建 db2 everyplace 數據庫表
  
  為了演示 db2 everyplace 對 jsp 應用程序開發的支持,我在本文中包括了一個樣本應用程序。
  
  首先,我們將創建一個稍后將由 jsp 應用程序訪問的 item 表。item 表包含每項物品的標識、描述、價格和可用性。
  
  要創建 item 表,將 sample-db2jsp.zip 文件解壓縮到 c://directory,directory 代表您選擇的任何目錄。這將創建一個名為 sample 的文件夾。sample 目錄中包含 builddb.java 和名為 setupdb.bat 的批處理文件。
  
  要創建數據庫,修改 setupdb.bat 以使 db2everyplace_location 變量指向安裝 db2 everyplace 的位置。當運行 setupdb.bat 時,它會編譯并運行 builddb.java 文件。
  
  builddb 類將在目錄 c:/sample/data/ 中創建 item 表。如果在運行該文件時發生錯誤,請確保為 db2everyplace_location 設置的路徑是正確的。
  
  運行 setupdb.bat 之后,會收到下列消息:
  
        table: item created
        results from table item :
  
  item_id: a1001
  item_name: think pad
  item_desc : configuration p4,256 sdram.
  item_price : $25000.
  item_available: y
  
  db2 everyplace 定制標記以及 jsp 支持的概述
  
  db2 everyplace 中對 jsp 的支持由兩個組件構成:
  
  微型 http web 服務器
  jsp 處理器
  微型 http web 服務器使用 http 1.1 協議接收來自 web 瀏覽器的請求,并將響應發送回 web 瀏覽器。jsp 處理器解析 jsp 文件,生成相應的 java 源代碼,然后編譯該源代碼。java 源代碼可能包含在 jsp 頁面受到請求時生成動態內容的 java bean。當 jsp 頁面受到請求時,微型 http web 服務器執行相應的 java 代碼,然后將輸出作為對請求的響應發送回 web 瀏覽器。
  
  jsp 應用程序開發是在 windows 工作站上完成的,然后移植到移動設備上。
  
  db2 everyplace jsp 支持中提供的 jsp 標記
  db2 everyplace 中的 jsp 標記是 jsp 1.1 規范的子集??捎糜?jsp 開發的標記如下:
  
  page 偽指令:
  page 偽指令定義了依賴于頁面的屬性。語法如下:
  
    <%@
     page page_directive_attr_list %>
     page_directive_attr_list ::=
     {language="scriptinglanguage"}
     {extends="classname" }
     {import="importlist" }
     {contenttype="ctinfo" }
  
  這條偽指令的四個有效屬性是:
  
  language — 必須是“java”。
  extends — 如果被指定,必須出現在 jsp 文件的開始處。缺省情況下,導入 com.ibm.db2e.jsp.server、java.io、java.sql 和 java.util 包。
  import — 如果被指定,必須出現在 jsp 文件的開始處。
  contenttype — 可以是任何值(如 text/html、text/xml 等)。
  include 偽指令
  include 偽指令用來包含來自于 jsp/html 的數據。語法如下:
  
   <%@ include file="relativeurlspec" %>
  
  腳本元素
  腳本編制元素用來聲明 jsp 頁面中使用的 java 變量和方法。語法如下:
  
   <%! declaration(s) %>
  
  所支持的腳本編制元素如下:
  
  scriptlet
  scriptlet 可以包含任何有效(java)代碼段。這些代碼段將被放到用于 jsp 頁面的 java 類的服務函數中。語法如下:
  
  <% scriptlet %>
  表達式(expression)
  表達式是數據類型的字符串表示。jsp 處理器在運行時對表達式求值,并將表達式轉換成字符串。語法如下:
  
  <%= expression %>
  隱式對象
  當創建 jsp 頁面時,我們具有對某些隱式對象的訪問權??梢栽?scriptlet 和表達式中使用這些對象,而不必首先聲明它們。每個隱式對象都具有一個在核心 java 技術或 com.ibm.db2e.jsp.server 包中定義的類。隱式對象的聲明如表 1 所示。
  
  
表 1. 隱式對象

  
 

  用于數據庫訪問的定制標記
  可以在 jsp 應用程序中使用以下定制標記來訪問 db2 everyplace 數據庫:
  
  <tsx:dbconnect>
  該標記使用 db2 everyplace jdbc 驅動程序建立與指定的 db2 everyplace 數據庫的連接。語法如下:
  
  <tsx:dbconnect
  id="connection_id"
  driver="com.ibm.db2e.jdbc.db2edriver"
  url="jdbc:db2e:database">
  </tsx:dbconnect>
  
  其中
  
  id — 指定此連接的標識符。不要在 jsp 頁面中重用此名稱。該屬性是必需的。
  driver — 指定 db2 everyplace jdbc 驅動程序。該屬性是必需的。
  url — 指定 db2 everyplace 數據庫。jdbc:db2e:database 變量中的項 database 表示 db2 everyplace 數據庫的路徑。該屬性是必需的。
  <tsx:dbquery>
  此標記使用通過 <tsx:dbconnect> 標記指定的連接將查詢提交給數據庫,并生成一個 java.sql.resultset 對象,在該對象中游標指向結果集的第一行??梢允褂么瞬樵兊臉俗R符和 java.sql.resultset 的 db2 everyplace jdbc 接口引用此結果集。語法如下:
  
  <tsx:dbquery id="query_id" connection="connection_id" limit="value">
  select_sql_statement
  </tsx:dbquery>
  
  其中
  
  id — 指定此查詢的標識符。不要在 jsp 頁面中重用此查詢標識符。該屬性是必需的。
  connection — 指定此 jsp 文件中 <tsx:dbconnect> 標記的標識符。該屬性是必需的。
  limit — 指定查詢可以返回的最大行數。該屬性是可選的。
  select_sql_statement — 指定想要提交給數據庫的 sql 查詢。此 sql 查詢語句可以包含動態數據。
  <tsx:dbmodify>
  此標記使用通過 <tsx:dbconnect> 標記指定的連接來提交命令,以修改數據庫內的數據。語法如下:
  
  <tsx:dbmodify connection="connection_id">
  modify_command
  </tsx:dbmodify>
  
  其中
  
  connection — 指定此 jsp 文件中 <tsx:dbconnect> 標記的標識符。該屬性是必需的。
  modify_command — 指定要提交到數據庫以修改數據的 sql 命令。此修改命令可以包含動態數據。
  <tsx:repeat>
  此標記用來循環遍歷查詢結果中的每一行。start 和 stop 屬性控制循環過程。如果未指定 start 和 stop 屬性,當結果集的游標(通過 <tsx:getproperty> 標記引用)到達結果集的末尾時循環終止。可以嵌套此標記。語法如下:
  
  <tsx:repeat index="name" start="starting_index" stop="ending_index">
  repeat_block
  </tsx:repeat>
  
  其中
  
  index — 指定此標記的循環變量的標識符。該屬性是可選的。
  start — 指定處理重復塊之前要跳過的行數。缺省值為 0,該屬性是可選的。
  stop — 指定此重復塊的結束循環變量值。缺省值是 2,147,483,647。該屬性是可選的。
  repeat_block — 指定 html 標記塊,其中包含 <tsx:getproperty> 標記語法和用于格式化內容的 html 標記。如果將 <tsx:getproperty> 標記放置在重復塊中,游標在每次處理重復塊時都會進到下一行。
  <tsx:getproperty>
  此標記獲取要在 jsp 頁(html 結果頁)中顯示的 resultset bean 的值。如果將此標記放置在 <tsx:repeat> 重復塊內,resultset bean 的游標在每次處理重復塊時會進到下一行。語法如下:
  
   <tsx:getproperty name="bean_name"
   property="property_name" />
  
  其中
  
  name(必需)— 指定先前在該 jsp 文件的 <tsx:dbquery> 標記中聲明的 resultset bean 的名稱。
  property(必需)— 指定要訪問的 resultset bean 的列。
  有了這些信息,我們就可以著手構建 jsp 應用程序了,它將訪問我們先前創建的 db2 everyplace 表。
  
  構建 jsp 應用程序
  
  
  先前解壓縮得到的文件夾 c://sample//jsp 包含 itemselectview.jsp 文件,這是我們的應用程序。itemselectview.jsp 應用程序顯示 item 表中存在的所有項。itemselectview.jsp 利用了先前討論的 jsp 標記。
  
  讓我們著手分析一些重要的代碼片段。首先我們將創建數據庫連接。
  
   <tsx:dbconnect
   id="conn"
   url="jdbc:db2e:c:/sample/data/"
   driver="com.ibm.db2e.jdbc.db2edriver">
   </tsx:dbconnect>
  
  我們在這里指定的 url 是數據庫的位置,在本例中是 c:/sample/data/。
  
  我們通過使用下面所示的 <tsx:dbquery> 標記執行 sql 查詢:
  
  <tsx:dbquery connection="conn" id="query1dbbean">
     select * from item
  </tsx:dbquery>
  
  然后,我們用下面所示的 <tsx:getproperty> 檢索數據庫查詢的結果:
  
  <tsx:getproperty name="query1dbbean" property="item_id" />
  
  這會從 item_id 列中檢索值。該技術對于我們希望檢索的其余列同樣有效。
  
  接下來,我們將著手部署 jsp。
  
  部署和測試 jsp
  可以用 db2 everyplace 提供的微型 http web 服務器在 windows 工作站上測試所開發的應用程序。在 windows 上采用下列步驟測試您的應用程序:
  
  瀏覽至 db2everyplace_location//clients//jsp//win32。編輯文件 minihttpconfig.properties,并修改 jsppath= c:////sample////jsp 項使其指向您的 jsp 文件的位置。
  執行 runjspserver.bat 文件以執行 minihttpserver。
  打開瀏覽器并輸入 http://localhost/itemselectview.jsp。您將收到下列消息,它表明 jsp 處理器已經成功編譯了我們的 jsp 文件。單擊 itemselectview.jsp 文件以查看結果。
  
    db2 everyplace jsp compiler
  
   jsp page: c://sample//jsp//itemselectview.jsp
     parsing ...
     compiling ...
     done.
   try it: itemselectview.jsp
  出現以下屏幕(圖 1),它顯示了 item 表中的數據。
  
  
圖 1. jsp 結果

  

  接下來我們將著手在 windows ce 設備上部署該應用程序。
  
  在 windows ce 設備上部署應用程序
  
  在工作站上開發了 jsp 應用程序之后,只需將應用程序的類文件和用于執行 jsp 的微型 http web 服務器一起復制到移動設備上。
  
  下列步驟可以用于在 windows ce 設備上部署該應用程序(或任何 jsp 應用程序)。
  
  下載并安裝用于移動設備的 j9 jvm 運行時環境。
  將下列文件從開發工作站復制到移動設備的 windows 目錄:
  db2everyplace_location //clients//wince//database//ver//processor_type//db2e.dll
  db2everyplace_location //clients//wince//database//ver//processor_type//db2ejdbc.dll
  db2everyplace_location//clients//wince//database//jdbc//db2ejdbc.jar
  
  其中 processor_type 是設備的處理器類型,ver 是設備的版本類型。
  
  將下列文件從 db2everyplace_location//sdk//jsp//wince 復制到設備的根目錄。
  
      minijsp.jar
      minihttpserver.lnk
  
  將文件 minihttpconfig.properties 從 db2everyplace_location//clients//jsp//win32 復制到設備的根目錄。
  
  打開 file explorer 并單擊根目錄中的 minihttpserver 快捷方式以啟動 minihttpserver 服務器。
  創建下列目錄:
  sample//data
  sample//jsp
  
  并將 c://sample//jsp 中的 *.class 復制到設備上的 sample//jsp,并將 c://sample//data 中的所有文件復制到設備上的 sample//data 中。
  
  在 web 瀏覽器中輸入下列 url:
  http://localhost/itemselectview.jsp
  
  您應該看到一個包含了 item_ desc 值的表。
  
  結束語
  在本文中,我們成功地創建和部署了一個 jsp 應用程序,它訪問存儲在 db2 everyplace 數據庫中的數據。我們還完成了在 windows ce 設備上部署應用程序的步驟??梢赃M一步使用這些知識來開發用于 windows ce/pocket pc 設備的復雜 jsp 應用程序。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国模gogo一区二区大胆私拍| 国产精品一二三在线| 国产精品久久久久久久久久尿| 亚洲美女精品成人在线视频| 最近2019中文字幕第三页视频| 亚洲欧美一区二区三区情侣bbw| 精品欧美一区二区三区| 中文字幕精品www乱入免费视频| 色综合老司机第九色激情| 尤物九九久久国产精品的特点| 91九色视频在线| 亚洲乱码国产乱码精品精天堂| 久久综合伊人77777尤物| 亚洲色无码播放| 国产suv精品一区二区三区88区| 久久天天躁狠狠躁夜夜爽蜜月| 欧美丰满老妇厨房牲生活| 国产精品美乳在线观看| 亚洲一区二区三区毛片| 亚洲午夜性刺激影院| 色偷偷9999www| 好吊成人免视频| 在线观看欧美视频| 97视频在线观看成人| 欧美性生活大片免费观看网址| 国产综合福利在线| 亚洲国产古装精品网站| 亚洲开心激情网| 色噜噜狠狠狠综合曰曰曰88av| 午夜精品99久久免费| 欧美猛交免费看| 成年无码av片在线| 亚洲色图av在线| 精品国产精品自拍| 国产91精品不卡视频| 欧美性猛交xxxx富婆弯腰| 九九精品在线观看| 一区二区三区动漫| 欧美精品日韩www.p站| 日韩欧美精品中文字幕| 中文字幕无线精品亚洲乱码一区| 日本三级韩国三级久久| 午夜精品一区二区三区在线视频| 69av在线视频| 久久久久久国产精品三级玉女聊斋| 国产在线观看一区二区三区| 成人性生交大片免费看小说| 亚洲片av在线| 欧美精品久久久久久久久| 色妞色视频一区二区三区四区| 国产精品极品美女粉嫩高清在线| 日韩欧美亚洲国产一区| 日韩成人在线网站| 欧美日韩性视频在线| 96sao精品视频在线观看| 国产成人亚洲综合91| 日韩视频欧美视频| 国产精品88a∨| 亚洲午夜久久久影院| 久久亚洲精品国产亚洲老地址| 国产91对白在线播放| 色综合视频网站| 国产亚洲免费的视频看| 国产精品爽爽ⅴa在线观看| 欧美黑人一区二区三区| 日韩欧美在线视频观看| 欧美性猛交xxxx免费看漫画| 这里只有精品在线观看| 中文字幕在线日韩| 国内免费精品永久在线视频| 粉嫩av一区二区三区免费野| 狠狠躁天天躁日日躁欧美| 日韩三级成人av网| 4k岛国日韩精品**专区| 岛国av在线不卡| 国产成人精品电影| 国产欧美一区二区三区久久| 色爱精品视频一区| 国产精品精品久久久| 国产一区二区三区日韩欧美| 亚洲精品电影网在线观看| 国产欧美日韩免费| 久久久免费高清电视剧观看| 久久精品成人欧美大片| 中文字幕欧美精品日韩中文字幕| 欧美精品18videosex性欧美| 亚洲缚视频在线观看| 久久视频在线观看免费| 国产一区二区三区日韩欧美| 中文字幕精品久久久久| 欧美孕妇孕交黑巨大网站| 8090成年在线看片午夜| 911国产网站尤物在线观看| 日韩美女av在线| 91国产中文字幕| 亚洲欧美国内爽妇网| 亚洲已满18点击进入在线看片| 国精产品一区一区三区有限在线| 91精品视频观看| 久久中文久久字幕| 色婷婷综合久久久久中文字幕1| 国产主播欧美精品| 欧美日韩国产色视频| 日韩有码片在线观看| 91a在线视频| 亚洲欧美国产日韩中文字幕| 亚洲第一视频在线观看| 国产欧美精品日韩精品| 精品国产老师黑色丝袜高跟鞋| 欧美精品手机在线| 欧美性精品220| 国产精品欧美日韩| 精品一区二区电影| 欧美精品www在线观看| xvideos亚洲人网站| 欧美韩日一区二区| 九九视频这里只有精品| 精品福利樱桃av导航| 国产精品精品视频一区二区三区| 欧美壮男野外gaytube| 成人黄色大片在线免费观看| 91在线视频九色| 欧洲美女免费图片一区| 久久久之久亚州精品露出| 欧洲亚洲免费在线| 久久999免费视频| 色天天综合狠狠色| 成人疯狂猛交xxx| 久久精品91久久香蕉加勒比| 黑人巨大精品欧美一区二区免费| 欧美亚洲视频一区二区| 777午夜精品福利在线观看| 成人午夜两性视频| 国产精品毛片a∨一区二区三区|国| 国产精品网址在线| 91精品在线观看视频| 日韩视频免费在线观看| 萌白酱国产一区二区| xx视频.9999.com| 亚洲护士老师的毛茸茸最新章节| 中文字幕久精品免费视频| 欧美国产高跟鞋裸体秀xxxhd| 亚洲一区二区中文字幕| 精品国产美女在线| 黑人巨大精品欧美一区二区一视频| 国产视频福利一区| 国产亚洲欧洲黄色| 亚洲男女性事视频| 亚洲欧美另类在线观看| 国产亚洲精品91在线| 国产视频在线观看一区二区| 久久久久久久国产精品视频| 欧美亚洲国产成人精品| 国产精品成人一区二区| 亚洲精品美女久久久| 欧美在线一级va免费观看| 日韩欧美一区二区三区久久| 一本色道久久88精品综合| 国产精品久久婷婷六月丁香| 色爱av美腿丝袜综合粉嫩av| 欧美日本高清一区| 欧美贵妇videos办公室| 自拍视频国产精品| 亚洲精品福利在线观看|