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

Struts由入門到精通(第三章)- struts簡(jiǎn)單例子

系統(tǒng) 1903 0

3.8 簡(jiǎn)單例子的分析(含代碼注釋和配置文件說(shuō)明)

安裝 Struts
  安裝 Struts 很容易,而且它不需要復(fù)雜的配置。首先,從 http://jakarta.apache.org/site/binindex.html 下載 Struts 安裝文件。在編寫本文期間, 1.0 版是穩(wěn)定版本,而 1.1 版是 bata 版。(在這一系列的項(xiàng)目中我用到 1.1-b2 版)

Struts 程序是用 Java 寫的,因此它要求使用 JDK1.2 或更高級(jí)的版本。它同時(shí)要求一個(gè)與解析 XML Java API JAXP )規(guī)范相兼容中的 XML 解析器。你需要將 XML 解析庫(kù)( jaxp.jar/parser.jar/ 其他文件)加入到你的 CLASSPATH 環(huán)境變量中去。而且,如果你在使用數(shù)據(jù)庫(kù),你則需要從 http://java.sun.com/products/jdbc 中下載并安裝 JDBC 2.0 Optional Package Binary 。(如果你用的是 JDK1.4 ,那么 XML 解析器和 JDBC 2.0 Optional Package Binary 會(huì)自動(dòng)包含在里面。)

  還有, Struts 要求使用一個(gè)支持 Servlet API 2.2 或更高版本的 servlet 容器。要找到已被確認(rèn)的可以使用 Struts servlet 容器列表,請(qǐng)查閱 INSTALL 文件。

  最后,要使 Struts 運(yùn)轉(zhuǎn)起來(lái),你需要加入一個(gè)環(huán)境變量 JAVA_HOME ,使其指向 JDK 安裝根目錄,并將 .jar 文件復(fù)制到每個(gè)程序的 WEB-INF/lib 目錄下。

注冊(cè)程序
  這是一個(gè)簡(jiǎn)單的注冊(cè)程序的例子,僅用到了 MVC 模式中的視圖和控制器。它要求用戶在查看公司機(jī)密賬號(hào)之前輸入用戶名和密碼。展示的第一個(gè)頁(yè)面是 Longin 頁(yè)面(見(jiàn)圖 1 )。如果注冊(cè)成功,用戶可以看到 Main Menu 頁(yè)面(見(jiàn)圖 2 ),其中包含兩個(gè)鏈接:一個(gè)是退出,另一個(gè)是查看公司機(jī)密賬號(hào)。如果注冊(cè)失敗,則用戶會(huì)被重新引導(dǎo)到注冊(cè)頁(yè)面。

Struts由入門到精通(第三章)- struts簡(jiǎn)單例子的分析(含代碼注釋和配置文件說(shuō)明)


1. 注冊(cè)


  如果用戶輸入正確的用戶名和密碼,程序會(huì)建立一個(gè) session 對(duì)象,并會(huì)有一個(gè)叫做 loggedIn 的屬性被添加到這個(gè) session 對(duì)象中去。只有當(dāng)程序能夠在用戶的 session 對(duì)象中查找到這個(gè) loggedIn 屬性時(shí)用戶才可以瀏覽 Main Menu 頁(yè)面和 Secret 頁(yè)面。所有缺少該屬性或無(wú)效的 session 對(duì)象都會(huì)迫使用戶登陸。(正確的用戶名是 “john” ,密碼是 “123” 。這些值是程序中固定寫死的以避免需要連接到數(shù)據(jù)庫(kù)里或使用其他存儲(chǔ)來(lái)完成用戶驗(yàn)證。)

  當(dāng)用戶退出時(shí),他或她的 session 對(duì)象將會(huì)失效,同時(shí) Longin 頁(yè)面會(huì)重新顯示。當(dāng)用戶點(diǎn)擊鏈接要查看公司機(jī)密時(shí),會(huì)彈出 Secret 頁(yè)面(見(jiàn)圖 3 )。
  有三種 JSP 頁(yè)面是以 MVC 模式中視圖的形式出現(xiàn)的: login.jsp ( 見(jiàn)圖 1), mainMenu.jsp ( 見(jiàn)圖 2), and viewSecret.jsp ( 見(jiàn)圖 3)

Struts由入門到精通(第三章)- struts簡(jiǎn)單例子的分析(含代碼注釋和配置文件說(shuō)明)


2. 主要事件


  由于所有 Struts 應(yīng)用程序同時(shí)也是 Model 2 應(yīng)用程序,所以它們必須具備一些用來(lái)充當(dāng) MVC 模式中控制器的東西(在該例子中是一個(gè)控制器 servlet )。在使用 Struts 時(shí),你無(wú)需編寫自己的控制器 servlet 。程序已經(jīng)幫你建好了,這也是用 Struts 來(lái)提高開(kāi)發(fā)效率的方法之一。

  在 Struts 應(yīng)用程序中控制器 servlet org.apache.struts.action.ActionServlet 類的一個(gè)實(shí)例。該類是包含在 struts.jar 文件中的諸多類的一個(gè)成員,所以你得在每個(gè)開(kāi)發(fā)的程序中分發(fā)此文件。

Struts由入門到精通(第三章)- struts簡(jiǎn)單例子的分析(含代碼注釋和配置文件說(shuō)明)

?


3. 你發(fā)現(xiàn)了一個(gè)秘密


  這個(gè)控制器 servlet 將根據(jù)請(qǐng)求中的 URL 把請(qǐng)求發(fā)送給適合的視圖。依照慣例,這個(gè) URI 是以 .do 結(jié)尾的。例如,指向 Secret 頁(yè)面請(qǐng)求的 URI 是: http://domain/appName/viewSecret.do ,而指向 Longin 頁(yè)面中的 URL http://domain/appName/login.do 。(當(dāng)然,在 URI 后面也可以帶有其他信息)

  如果你編寫過(guò) servlet 或者 JSP 應(yīng)用程序,你可能猜想在部署描述符當(dāng)中使用了 servlet 映射,以便將請(qǐng)求發(fā)送到 ActionServlet 實(shí)例中去。沒(méi)錯(cuò), Struts 是另一種版本的 servlet/JSP 程序。程序中的描述符顯示在列表 1 中。這些代碼說(shuō)明了以下三點(diǎn):

action servlet 配置部分, org.apache.struts.action.ActionServlet 類的實(shí)例被稱為 action

所有以 .do 結(jié)尾的 URL 均被映射到 action servlet 中。

Login.jsp 是一個(gè) welcome file ,它是在 URL 不包含資源名稱時(shí) ( 換言之,當(dāng) URL 屬于 http://domain/myApp form 時(shí) ) 被調(diào)用的默認(rèn)文件。

  此外,列表 1 中的部署描述符沒(méi)有什么特殊的用法,它只是簡(jiǎn)單地說(shuō)明 Struts 應(yīng)用程序和一般的 servlet 應(yīng)用程序很相似。

  應(yīng)用程序中對(duì)資源的請(qǐng)求被發(fā)送到 ActionServlet 中去,然后由它將控制權(quán)轉(zhuǎn)給其他對(duì)象,這些對(duì)象稱為 action objects 。我會(huì)在這個(gè)系列的第二部分中講解 action 對(duì)象和其他一些應(yīng)用程序。

  現(xiàn)在你知道了如何安裝和配置 Struts ,而且你也弄懂了注冊(cè)程序項(xiàng)目規(guī)范和部署描述符,那么你可以點(diǎn)擊此處下載全部程序。

?

?

?

?

?

Struts由入門到精通(第三章)- struts簡(jiǎn)單例子的分析(含代碼注釋和配置文件說(shuō)明)


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

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

【本文對(duì)您有幫助就好】

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

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 成人亚洲区无码偷拍 | 日韩精品在线一区 | 国产精品久久久久久久免费大片 | 亚洲免费在线观看视频 | 偷偷要色偷偷 | 成人一区二区三区 | 99热久久这里只有精品6国产网 | 亚洲精品午夜一区二区 | 亚洲成人综合视频 | 超污视频在线看 | 欧美精品午夜久久久伊人 | 久久久久亚洲精品 | 国产欧美日韩综合精品一区二区 | 国产aⅴ一区二区三区 | 午夜精品久久久久久久男人的天堂 | 国产精品一级香蕉一区 | 在线观看国产日韩欧美 | 久久免费精品视频在线观看 | 91免费大片 | 欧美在线播放一区 | 欧美电影网站在线观看影片 | 欧美一级毛片欧美毛片视频 | 麻豆精品国产自产在线 | 成人深夜视频在线观看 | 亚洲成人网在线 | 欧美成人另类人妖 | 日韩欧美亚洲综合 | 天天躁日日躁aaaa视频 | 国产一级特黄aa大片免费 | 亚洲国产天堂久久精品网 | 午夜家庭影院 | 成人在线播放视频 | 九九热在线免费视频 | 日韩一级片播放 | 亚洲第一a亚洲 | 久久精品国产一区二区电影 | 网站在线观看 | 亚洲人免费视频 | 国产乱码精品一区二区三区中 | 99色精品| 国产亚洲一区二区三区在线观看 |