jsp之web組件復用,jsp頁面復用

本文目錄一覽:

碩正web組件怎麼在jsp上獲取後台數據

用request.getAttribute獲取,而不是getParameter。 (1)HttpServletRequest接口有setAttribute()方法,而沒有setParameter()方法 (2)當兩個Web組件之間為鏈接關係時,被鏈接的組件通過getParameter()方法來獲得請求參數,

JSP開發Web站點的4種方式

直接使用JSP(小型,功能簡單)

在JSP頁面中加入JavaBean,用JavaBean來封裝數據庫連接等(中等規模,邏輯關係簡單)

JSP、Servlet、和JavaBean結合起來,網站邏輯完全放在Servlet中,動態頁面的輸出放在JSP頁面完成(網站邏輯關係複雜)

用JavaEE開發模型(將整個系統分為三個主要部分:視圖,控制器,模型,前者處理用戶看到的界面,中者負責網站整體邏輯,用來搞管理用戶與視圖發生的交互,後者是應用業務邏輯部分,用Java 服務器端組件模型EJB來完成)

用框架整合應用來開發Web站點,如SSH(這種方式當今主流web應用開發模式)

你說的四種我不知道是哪四個,這是實際開發中開發Web站點的主要五種方式

Web組件與Web容器有哪些,WEB組件的三種關聯

Web組件:有Jsp,Servlet等

Web容器:有tomcat ,jboss, resin, weblogic ,websphere, glassfish。可以理解為Web服務器。

WEB應用程序如此強大的原因之一就是他們能彼此鏈接和聚合信息資源。WEB組件之間存在三種關聯關係:

l 請求轉發

l URL重定向

l 包含關係

存在以上關聯關係的Web組件可以是JSP或Servlet,對於Struts應用,則還包含Action,這些Web組件都可以訪問HttpServletRequest和HttpServletResponse對象,具有處理請求、生成響應結果的功能。

1. 請求轉發。

請求轉發允許把請求轉發給同一個應用程序中的其他Web組件。這種技術通常應用於Web應用中的Servlet流程控制器。

Servlet類使用 javax.servlet.RequestDispatcher.forward()方法來轉發。轉發目標將處理該請求並生成響應結果,或者將請求轉發到另一個組件,最初請求的ServletRequest,ServletResponse對象被傳遞給轉發目標組件,這使得目標組件可以訪問整個請求上下文。值得注意的是,只能把請求轉發給同一個web應用中的組件。下面是一個例子,當前的servlet組件要把請求轉發給一個JSP組件,如hello.jsp,可以在Servlet的service()方法中執行以下代碼:

RequestDispatcher rd = request.getRequestDispatcher(“hello.jsp”);

Rd.forward(request,response);

在jsp頁面中,可以使用jsp:forward標籤來轉發請求,例如:

jsp:forward page=”hello.jsp”/

對於請求轉發,轉發的源組件和目標組件共享request範圍內的共享數據。

2. 請求重定向

請求重定向類似於請求轉發,但也有一些重要的區別:

l Web組件可以將請求重定向到任一URL,而不僅僅是同一應用中的URL。

l 重定向的目標組件與源組件之間不共用同一個HttpServletRequest對象,因此不能共享request範圍內的共享數據。

例如當前應用的Servlet組件把請求轉發到URL:,可以在Servlet的service()方法中執行以下代碼:

Response.sendRedirect(“”);

HttpServletResponse的sendRedirect()方法向瀏覽器返回包含重定向的信息,瀏覽器根據這一信息迅速發出一個新的HTTP請求,請求訪問重定向目標組件。

3. 包含

Servlet類使用javax.servlet.RequestDispatcher.include()方法包含其他的Web組件。例如當前的Servlet組件包含三個JSP文件:header.jsp/main.jsp/footer.jsp,則可以在servlet的service()方法中執行以下代碼:

RequestDispatcher rd;

Rd = req.getRequestDispatcher(“/header.jsp”);

Rd.include(req,res);

Rd = req.getRequestDispatcher(“/main.jsp”);

Rd.include(req,res);

Rd = req.getRequestDispatcher(“/footer.jsp”);

Rd.include(req,res);

在JSP文件中,可以通過〈include〉指令來包含其他的web資源,例如:

%@ include file=”header.jsp”%

%@ include file=“main.jsp”%

%@ include file=”footer.jsp”%

JSP技術有什麼特徵?

1.2 JSP技術特徵\x0d\x0a\x0d\x0aJSP技術所開發的Web應用程序是基於Java的,它擁有Java語言跨平台的特性,以及業務代碼分離、組件重用、基礎Java Servlet功能和預編譯等特徵。\x0d\x0a\x0d\x0a1.2.1 跨平台\x0d\x0a\x0d\x0a既然JSP是基於Java語言的,那麼它就可以使用Java API,所以它也是跨平台的,可以應用在不同的系統中,如Windows、Linux、Mac和Solaris等。這同時也拓寬了JSP可以使用的Web服務器的範圍。另外,應用於不同操作系統的數據庫也可以為JSP服務,JSP使用JDBC技術操作數據庫,從而避免了代碼移植導致更換數據庫時的代碼修改問題。\x0d\x0a\x0d\x0a正是因為跨平台的特性,使得採用JSP技術開發的項目可以不加修改地應用到任何不同的平台上,這也應驗了Java語言的”一次編寫,到處運行”的特點。\x0d\x0a\x0d\x0a1.2.2 業務代碼分離\x0d\x0a\x0d\x0a採用JSP技術開發的項目,通常使用HTML語言來設計和格式化靜態頁面的內容,而使用JSP標籤和Java代碼片段來實現動態部分。程序開發人員可以將業務處理代碼全部放到JavaBean中,或者把業務處理代碼交給Servlet、Struts等其他業務控制層來處理,從而實現業務代碼從視圖層分離。這樣JSP頁面只負責顯示數據即可,當需要修改業務代碼時,不會影響JSP頁面的代碼。\x0d\x0a\x0d\x0a1.2.3 組件重用\x0d\x0a\x0d\x0aJSP中可以使用JavaBean編寫業務組件,也就是使用一個JavaBean類封裝業務處理代碼或者作為一個數據存儲模型,在JSP頁面甚至整個項目中都可以重複使用這個JavaBean。JavaBean也可以應用到其他Java應用程序中,包括桌面應用程序。\x0d\x0a\x0d\x0a1.2.4 繼承Java Servlet功能\x0d\x0a\x0d\x0aServlet是JSP出現之前的主要Java Web處理技術。它接受用戶請求,在Servlet類中編寫所有Java和HTML代碼,然後通過輸出流把結果頁面返回給瀏覽器。其缺點是:在類中編寫HTML代碼非常不便,也不利於閱讀。使用JSP技術之後,開發Web應用便變得相對簡單快捷多了,並且JSP最終要編譯成Servlet才能處理用戶請求,因此我們說JSP擁有Servlet的所有功能和特性。\x0d\x0a\x0d\x0a1.2.5 預編譯\x0d\x0a\x0d\x0a預編譯就是在用戶第一次通過瀏覽器訪問JSP頁面時,服務器將對JSP頁面代碼進行編譯,並且僅執行一次編譯。編譯好的代碼將被保存,在用戶下一次訪問時,直接執行編譯好的代碼。這樣不僅節約了服務器的CPU資源,還大大提升了客戶端的訪問速度。

我們還需要JSP嗎?

jsp還是需要的,現在很多大型的電商網站都是採用jsp做的,jsp就有以下特點:

1 跨平台

既然JSP是基於Java語言的,那麼它就可以使用Java API,所以它也是跨平台的,可以應用在不同的系統中,如Windows、Linux、Mac和Solaris等。這同時也拓寬了JSP可以使用的Web服務器的範圍。另外,應用於不同操作系統的數據庫也可以為JSP服務,JSP使用JDBC技術操作數據庫,從而避免了代碼移植導致更換數據庫時的代碼修改問題。

正是因為跨平台的特性,使得採用JSP技術開發的項目可以不加修改地應用到任何不同的平台上,這也應驗了Java語言的”一次編寫,到處運行”的特點。

2 業務代碼分離

採用JSP技術開發的項目,通常使用HTML語言來設計和格式化靜態頁面的內容,而使用JSP標籤和Java代碼片段來實現動態部分。程序開發人員可以將業務處理代碼全部放到JavaBean中,或者把業務處理代碼交給Servlet、Struts等其他業務控制層來處理,從而實現業務代碼從視圖層分離。這樣JSP頁面只負責顯示數據即可,當需要修改業務代碼時,不會影響JSP頁面的代碼。

3 組件重用

JSP中可以使用JavaBean編寫業務組件,也就是使用一個JavaBean類封裝業務處理代碼或者作為一個數據存儲模型,在JSP頁面甚至整個項目中都可以重複使用這個JavaBean。JavaBean也可以應用到其他Java應用程序中,包括桌面應用程序。

4 繼承Java Servlet功能

Servlet是JSP出現之前的主要Java Web處理技術。它接受用戶請求,在Servlet類中編寫所有Java和HTML代碼,然後通過輸出流把結果頁面返回給瀏覽器。其缺點是:在類中編寫HTML代碼非常不便,也不利於閱讀。使用JSP技術之後,開發Web應用便變得相對簡單快捷多了,並且JSP最終要編譯成Servlet才能處理用戶請求,因此我們說JSP擁有Servlet的所有功能和特性。

5 預編譯

預編譯就是在用戶第一次通過瀏覽器訪問JSP頁面時,服務器將對JSP頁面代碼進行編譯,並且僅執行一次編譯。編譯好的代碼將被保存,在用戶下一次訪問時,直接執行編譯好的代碼。這樣不僅節約了服務器的CPU資源,還大大提升了客戶端的訪問速度。

解釋JSP的作用,並列舉JSP的特點

JSP是一種建立在Servlet規範功能之上的動態網頁技術,是在通常的網頁文件中嵌入腳本代碼,用於產生動態內容,在JSP文件中嵌入的是java代碼和JSP標記。

特點:

1、將內容的生成和顯示進行分離使用JSP技術,Web頁面開發人員可以使用HTML或者XML標識來設計和格式化最終頁面。

2、強調可重用的組件絕大多數JSP頁面依賴於可重用的,跨平台的組件來執行應用程序所要求的更為複雜的處理。

3、採用標識簡化頁面開發Web頁面開發人員不會都是熟悉腳本語言的編程人員。

JSP的優缺點

一、缺點

1、JSP技術極大的增加了產品的複雜性。

2、java的高效率運行需要佔用大量的內存和硬盤空間。一方面,java的高速運行是通過.class文件常駐內存來實現的,另一方面,還需要硬盤空間來存儲一系列的.java文件和.class文件以及對應的版本文件。

3、JSP程序調試困難。

二、優點

1、JSP代碼跨平台,即一次編寫,處處運行。

2、JSP組件跨平台可重用,企業JavaBeans組件可以訪問傳統的數據庫,並能以分布式系統模式工作於Solaris,Linux,UNIX和Windows平台。

3、支持多種網頁格式。

4、JSP標籤可擴充性。JSP技術允許開發者擴展JSP標籤,定製JSP標籤庫,所以網頁製作者充分利用與XML兼容的標籤技術強大的功能,大大減少對腳本語言的依賴。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/290816.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-24 13:13
下一篇 2024-12-24 13:13

相關推薦

  • 打包後頁面空白的解決方案

    當我們在調試階段時,我們的app可能看起來完美無缺,但當我們進行打包時,在運行app時,我們可能會遇到白屏或空白的問題。在這篇文章中,我們將探討如何解決這種問題。 一、檢查文件路徑…

    編程 2025-04-29
  • 如何修改ant組件的動效為中心

    當我們使用Ant Design時,其默認的組件動效可能不一定符合我們的需求,這時我們需要修改Ant Design組件動效,使其更加符合我們的UI設計。本文將從多個方面詳細闡述如何修…

    編程 2025-04-29
  • Ant Design組件的動效

    Ant Design是一個基於React技術棧的UI組件庫,其中動效是該組件庫中的一個重要特性之一。動效的使用可以讓用戶更清晰、更直觀地了解到UI交互的狀態變化,從而提高用戶的滿意…

    編程 2025-04-29
  • Python操作Web頁面

    本文將從多個方面詳細介紹Python操作Web頁面的技巧、方法和注意事項。 一、安裝必要的庫 在Python中操作Web頁面,需要用到一些第三方庫。 pip install req…

    編程 2025-04-28
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • 用mdjs打造高效可復用的Web組件

    本文介紹了一個全能的編程開發工程師如何使用mdjs來打造高效可復用的Web組件。我們將會從多個方面對mdjs做詳細的闡述,讓您輕鬆學習並掌握mdjs的使用。 一、mdjs簡介 md…

    編程 2025-04-27
  • Spring MVC主要組件

    Spring MVC是一個基於Java語言的Web框架,是Spring Framework的一部分。它提供了用於構建Web應用程序的基本架構,通過與其他Spring框架組件集成,使…

    編程 2025-04-27
  • 為什麼web項目的歡迎頁必須是jsp?

    在web項目中,歡迎頁通常是用戶首次訪問的頁面。而對於這個頁面的選擇,我們通常會選擇jsp作為歡迎頁,其原因是什麼呢? 一、JSP的優勢 JSP與HTML和CSS的結合,可以實現動…

    編程 2025-04-25
  • Mescroll.js——移動端下拉刷新和上拉加載更多組件

    一、概述 Mescroll.js是一款移動端的下拉刷新和上拉加載更多組件,因其簡單易用和功能強大而深受開發者的喜愛。Mescroll.js可以應用於各種移動端網站和APP,能夠支持…

    編程 2025-04-25
  • Vue強制重新渲染組件詳解

    一、Vue強制重新渲染組件是什麼? Vue中的強制重新渲染組件指的是,當我們需要重新渲染組件,但是組件上的數據又沒有改變時,我們可以使用強制重新渲染的方式來觸發組件重新渲染。這種方…

    編程 2025-04-25

發表回復

登錄後才能評論