freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ajax的電子相冊管理系統(tǒng)-閱讀頁

2024-11-30 03:59本頁面
  

【正文】 性。需要做的只是在新平臺上對 原有 視圖和控制器進行 一些 修改。模型 (Model)是軟件所處理問題邏輯在獨立于外在顯示內(nèi)容和形式情況下的內(nèi)在抽象,封裝了問題的核心數(shù)據(jù)、邏輯和功能的計算關(guān)系,獨立于具體的界面表達和 I/O 操作。它從模型獲得顯示信息,對于相同的信息可以有多個不同的顯示形式或視圖。通常一個視圖對應(yīng)一個控制器。如果用戶通過某個視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴于這些數(shù)據(jù)的視圖都應(yīng)反映到這些變化。這實際上是一種模型的變化 傳播機制。靜態(tài) HTML 對于顯示靜態(tài)內(nèi)容是不錯的選擇,新的挑戰(zhàn)在于創(chuàng)建交互的基于 Web 的應(yīng)用程序,用戶在瀏覽信息的同時也需要向服務(wù)器反饋一些信息,在這些程序中,頁面的內(nèi)容是基于用戶的請求或系統(tǒng)的狀態(tài),而不是預(yù)先定義的文字。但這些解決方案是與特定的 Web 服務(wù)器相關(guān)的,例如,微軟的 ASP 技術(shù)使得在 Web 頁面上創(chuàng)建動態(tài)內(nèi)容更加容易,但是也只能工作在微軟的 IIS 和 Personal Web Server 上。例如像 Jsp Servlet技術(shù),就可以使得用 Java語言編寫交互應(yīng)用程序的服務(wù)器端代碼變得很容易,開發(fā)人員能夠編寫出這樣的Servlet,以接受來自 Web 瀏覽器的 HTTP 請求,動態(tài)地生成響應(yīng),然后發(fā)送包含 HTML 或 XML 文檔的響應(yīng)到瀏覽器。采用這種辦法,生成有動態(tài)內(nèi)容的頁面仍然需要應(yīng)用程序的開發(fā)技巧。這個方案將解決當(dāng)前方案所受到的限制,即使在任何 Web 的交互程序服務(wù)器上運行、將應(yīng)用程序邏輯和頁面顯示分離、能夠快速地開發(fā)和測試、簡化開發(fā)基于 Web的交互式應(yīng)用程序的過程。 JSP 規(guī)范是 Web 服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)以及開發(fā)工具供應(yīng)間廣泛合作的結(jié)果, SUN 公司開發(fā)出這個規(guī)范來整合和平衡已經(jīng)存在的規(guī)范對 Java 編程環(huán)境進行支持的技術(shù)和工具,其結(jié)果是產(chǎn)生了一種新的、開發(fā)基于 Web 應(yīng)用程序的方法,給予使用基于組件應(yīng)用邏輯的頁面設(shè)計者以強大的功能支持。 ( 2) JSP 標識 絕大數(shù) JSP 處理 將通過與 JSP 相關(guān)的基于 XML 的標識完成,這些標識包括: 12 ? Jsp: useBean 這個標識聲明對一個 JavaBean 組件實例的使用; ? Jsp: setproperty 這個標識在組件的實例中設(shè)置一個屬性的值; ? Jsp: getProperty 這個標識獲取一個組件的實例的屬性值,將其轉(zhuǎn)化為字符串,并且將它放入隱含對象 out 中 。 ( 3) JSP 腳本 JSP 頁面可以在頁面中包 含小的腳本,小腳本是一個代碼片段,在請求的出處理過程中被執(zhí)行,小腳本可以和頁面中的靜態(tài)元件組合起來創(chuàng)建動態(tài)生成的頁面。 ( 4) JSP 頁面應(yīng)用模型 JSP 頁面由 JSP 容器執(zhí)行,容器安裝在 Web 服務(wù)器或者 JSP 的引用服務(wù)器上,JSP 容器接受客戶端的請求,并且生成 JSP 頁面給客戶端的響應(yīng)。 MyEclipse 絕對就是一個不錯的選擇,不論是單機應(yīng)用還是網(wǎng)絡(luò)開發(fā),它都提供了很好的支持,特別是對JSP 和 Tomcat 服務(wù)器的支持,使軟件開發(fā)人員在開發(fā)過程中感覺便于操作,可以很好的實現(xiàn)功能很快的看到效果,節(jié)省了開發(fā)人員很多的時間。針對這一原因在 MyEclipse 新 版本的研發(fā)上著重 需要 解決這一缺陷,他們以 MyEclipse 完全整合了 Ecplise,換句話說 , 開發(fā)人員只需要安裝 好 MyEclipse 就相當(dāng)于一次性安裝好了 Eclipse 和一些經(jīng)典 的 web 開發(fā)插件。目前, MyEclipse 已經(jīng)開始提供一 13 些語言開發(fā)的功能插件,例如 C 語言等。也就是說未來只要有人需要,就會有建立在 MyEclipse 之上的 COBOL, Perl, Python 等語言的開發(fā)插件出現(xiàn)。它 可以無限擴展,而且有著統(tǒng)一的外觀,操作和系統(tǒng)資源管理 界面 ,這也正是MyEclipse 的潛力所在。它支持包括 SOAP、 WSDL、 UDDI 和 WSIL 等最新的 Web Services 技術(shù),并且可以通過拖放方式更快捷地實現(xiàn)創(chuàng)建、驗證、輸入和輸出 Web 服務(wù),同時利用 MyEclipse 提供的多種可視化插件,可以快速地開發(fā) Web 應(yīng)用程序。通過它提供的實時代碼語法檢查,我可以隨時找到語法上的編寫錯誤,以不同顏色標注代碼的變量和語句,使程序變得很清晰,可讀性也提高了。 WEB服務(wù)器 Tomcat 在 WEB 工具的選擇上 , 我所選的是 Tomcat , Tomcat 是一個免費的開源的 Serlvet 容器,它是 Apache 基金會的 Jakarta 項目中的一個核心項目,由 Apache,Sun 和其它一些公司及個人共同開發(fā)而成。 Tomcat 被 JavaWorld 雜志的編輯選為 2020 年度最具創(chuàng)新的 Java 產(chǎn)品,可見其在業(yè)界的地位。 ( 3) Connector : 一個 Connector 將在某個指定端口上偵聽客戶請求,并將 14 獲得的請求交給 Engine 來處理,從 Engine 處獲得回應(yīng)并返回客戶 。 Coyote Http/ Connector 在端口 8080 處偵聽來自客戶browser 的 請求 。 ( 4) Engine : Engine 下可以配置多個虛擬主機 Virtual Host,每個虛擬主機都有一個域名 。 Engine 有一個默認虛擬主機,當(dāng)請求無法匹配到任何一個 Host 上的時候,將交給該默認 Host 來處理 。 每個虛擬主機下都可以部署 (deploy)一個或者多個Web App,每個 Web App 對應(yīng)于一個 Context,有一個 Context path。 匹配的方法是 “最長匹配 ”,所以一個 path==的 Context 將成為該 Host的默認 Context 所有無法和其它 Context 的路徑名匹配的請求都將最終和該默認Context 匹配 。 Context 在創(chuàng)建的時候?qū)⒏鶕?jù)配置文件$CATALINA_HOME/conf/ 和 $WEBAPP_HOME/WEBINF/ 載入Servlet 類 。 如果找到,則執(zhí)行該類,獲得請求的回應(yīng),并返回 。 ( 2) Connector 把該請求交給它所在的 Service 的 Engine 來處理,并等待來自 Engine 的回應(yīng) 。 15 ( 4) Engine 匹配到名為 localhost 的 Host(即使匹配不到也把請求交給該Host 處理,因為該 Host 被定義為該 Engine 的默 認主機 )。 ( 6) Host 匹配到路徑為 /web 的 Context(如果匹配不到就把該請求交給路徑名為 的 Context 去處理 )。 ( 8) Context 匹配到 URL PATTERN 為 *.jsp 的 servlet,對應(yīng)于 JspServlet 類 。 ( 10) Context 把執(zhí)行完了之后的 HttpServletResponse 對象返回給 Host。 ( 12) Engine 把 HttpServletResponse 對象返回給 Connector。 本章小結(jié) 在本章中主要介紹了軟件開發(fā)時所用的開發(fā)工具和相關(guān)的技術(shù),重點介紹了Java、 J2EE 平臺和 MVC 結(jié)構(gòu)等相關(guān)知識以及 AJAX 技術(shù)在系統(tǒng)中的實際作用和Struts2 框架 的工作機制。 16 第 3 章 AJAX技術(shù) 基本原理 及應(yīng)用 AJAX技術(shù)介紹 AJAX即 “Asynchronous JavaScript and XML”(異步 JavaScript和 XML), AJAX并非縮寫詞,而是由 Jesse James Gaiiett 創(chuàng)造的名詞,是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。這些不同引入了新的編程問題,最大的問題在于易用性。綜合各種變化的技術(shù)和強耦合的客戶服務(wù)端環(huán)境, AJAX 提出了一種新的開發(fā)方式。同時,開發(fā)人員還需要考慮 CS 環(huán)境的外部和使用 AJAX 技術(shù)來重定型 MVC 邊界。一旦 UI 設(shè)計與服務(wù)架構(gòu)之間的范圍被嚴格區(qū)分開來后,開發(fā)人員就需要更新和變化的技術(shù)集合了。在使應(yīng)用更快響應(yīng)和創(chuàng)新的過程中,定義Web 應(yīng)用的規(guī)則正在被重寫 ; 因此開發(fā)人員必須更注重用戶。例如用戶通常希望每一次按鈕點擊會導(dǎo)致幾秒的延遲和屏幕刷新,但 AJAX 正在打破這種長時間的狀況。例如:注冊用戶名的檢測是 AJAX 技術(shù)自動判斷并顯示用戶名是否可用,增加了注冊用戶的體驗好感度;系統(tǒng)的搜索功能實現(xiàn)就是仿照 Google 搜索做的智能搜索提示,可以自動補全用戶將要搜索的關(guān)鍵字,給用戶帶來了良好的使用體驗。另外用戶評論、推薦次數(shù)的動態(tài)加載都是 AJAX 技術(shù)在系統(tǒng)中的體現(xiàn)。服務(wù)器接收并處理傳來的請求 , 然后 返回一個新的網(wǎng)頁 給客戶端,用戶需要等待新頁面的刷新 加載 。由于每次應(yīng)用的交互都需要向服務(wù)器發(fā)送請求,應(yīng)用的響應(yīng)時間就依賴于服務(wù)器的響應(yīng)時間 , 這導(dǎo)致了用戶界面的響應(yīng)比本地應(yīng)用慢得多 ,從而 降低了用戶體驗 。因為在服務(wù)器和瀏覽器之間交換的數(shù)據(jù)大量減少,結(jié)果我們就能看到響應(yīng)更快的應(yīng)用。 使用 AJAX 的最大優(yōu)點,就是能在不更新整個頁面的前提下維護數(shù)據(jù)。 AJAX 不需要任何瀏覽器插件,但需要用戶允許 JavaScript 在瀏覽器上執(zhí)行。隨著 AJAX 的成熟,一些簡化 AJAX 使用方法的程序庫也相繼問世。 開發(fā) AJAX應(yīng)用面臨的問題及解決方案 對程序員而言,開發(fā) AJAX 應(yīng)用最頭痛的問題莫過于以下幾點: ( 1) AJAX 在本質(zhì)上是一個瀏覽器端的技術(shù),首 先面臨無可避免的第一個問題即是瀏覽器的兼容性問題。這導(dǎo)致程序員在寫 AJAX 應(yīng)用時花大部分的時間在調(diào)試瀏覽器的兼容性而非在應(yīng)用程序本身。如。如同傳統(tǒng)之主從架構(gòu),無可避免的會有部分的業(yè)務(wù)邏輯會實現(xiàn)在客戶端,或部分在客戶端部分在服務(wù)器。如有用戶接口或業(yè)務(wù)邏輯之更動需求,再加上前一個 JavaScript/DOM/CSS 之兼容性問題, AJAX 應(yīng)用往往變成程序員的夢魘。因為所有的程序以 JavaScript 執(zhí)行在客戶端,只有需要數(shù)據(jù)時才向服務(wù)器要求服務(wù),此法又稱為胖客戶端( fat client)架構(gòu)。此法的好處在于程序員可以充分利用 JavaScript 搭配業(yè)務(wù)邏輯來做出特殊的用戶接口,以符合終端用戶的要求。第二, JavaScript 的執(zhí)行效能一向不好。第四 ,瀏覽器兼容性的問題又出現(xiàn)。但是前述第一及第二兩個問題仍然存在,程序員必須費相當(dāng)?shù)牧獠拍苓_到應(yīng)用程序之規(guī)格要求,或可能根本無法達到要求。瀏覽器的用戶接口引擎僅用于反映服務(wù)器的表現(xiàn)層以及傳達用戶的輸入回到服務(wù)器的表現(xiàn)層。因為所有應(yīng)用程序完 19 全在服務(wù)器執(zhí)行,數(shù)據(jù)及表現(xiàn)層皆可直接訪問,程序員只需使用服務(wù)器端相對較成熟之程序語言(如 Java 語言)即可,不需再學(xué)習(xí) JavaScript/DOM/CSS,在開發(fā)應(yīng)用程序時相對容易。如開源碼 AJAX 開發(fā)框架 ZK 目前支持 XUL 及 XHTML 組件,尚無 XAML之支持。對服務(wù)器而言,其與傳統(tǒng)的提交窗體需求并無不同,而且由于是以異步之方式提交,如果同時有多個AJAX 需求及窗體提交需求,將無法保證哪一個需求先獲得服務(wù)器的響應(yīng)。程序員因此必須自行處理或在 JavaScript 里面動手腳以避免這類競爭問題的發(fā)生(如 AJAX 需求未響應(yīng)之前,先 Disable 送出按鈕),這 又不必要的增加了程序員的負擔(dān)。 AJAX技術(shù) 在本系統(tǒng)中的應(yīng)用 由于篇幅有限, 本節(jié)選取了系統(tǒng)中的一些典型 AJAX 應(yīng)用,從 它們的 實現(xiàn)原理以及與傳統(tǒng)應(yīng)用的不同點進行多角度的 分析 , 目的就是為了 讓讀者感受到AJAX 技術(shù)的 巨大的魅力所在。 但是對于用戶注冊名的驗證這是不夠的,應(yīng)為注冊名應(yīng)該是 Web 應(yīng)用 中來 區(qū)別用戶的 標識符 ,所 以 它 是不能重復(fù)的 ,而這種 驗證涉及到 后臺數(shù)據(jù)庫的查詢,所以前臺的 JavaScript 是無能為力的 ,所以傳統(tǒng) Web 應(yīng)用一般不做用戶名是否存在的驗證就提交。 用 AJAX 技術(shù)對用戶名進行檢測時,不需要用戶 花時間 去 提交 操作 和刻意的 20 等待用戶名檢測 , 此過程 不影響用戶填寫 注冊 表單, 這 與傳統(tǒng)注冊方式相比避免了 因為 用戶名 重復(fù) 時 導(dǎo)致用戶的不斷注冊行為和等待刷新頁面 浪費的時間 ,有效增強了用戶的使用體驗。 當(dāng)用戶要繼續(xù)瀏覽下一張圖片時候,點擊 “ 下一張 “ 的 按鈕 , 然后應(yīng)用重復(fù)上面的過程一次。 當(dāng)用戶瀏覽到相冊中的最后一張相片 后 ,就彈出一個提示框,并不進行 當(dāng)前展示 相片的 切換 動作。 用戶評論的動態(tài)加載 在 AJAX 技術(shù)還沒有開始大面積開始應(yīng)用時,互聯(lián) 網(wǎng)中 WEB 頁面上評論加載方式一般都是用戶發(fā)表評論后,前臺彈出一個評論發(fā)表成功的提示框就完了,頁面并不裝載此用戶剛剛發(fā)表的評論,而是等下一次有人訪問這個列表頁面時候才從數(shù)據(jù)庫中查詢出那個評論。 傳統(tǒng)的評論動態(tài)加載方式還有一種就是當(dāng)用戶發(fā)表了評論后就發(fā)起一次客戶端請求,然后從數(shù)據(jù)庫查詢一次評論列表和當(dāng)前的頁面上的其他信息,然后刷新一次重新顯示整個頁面,這樣做無疑會讓服務(wù)器 21 處理一些無用的重復(fù)查詢,而且也浪費了用戶每次等待刷新的寶貴時間。 這里使用 AJAX 傳遞的評論信息并不是簡單的文本信息,因為 用戶 評論列表項包含 的不僅僅是評論的內(nèi)容,還有評論發(fā)表的時間,發(fā) 表的用戶信息,所以簡單的線性文本在評論項的傳輸與解析上十
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1