jsp 和 servlet 有什么區別?
servlet是服務器端的Java程序,它擔當客戶端和服務端的中間層。
jsp全名為Java server pages,中文名叫Java服務器頁面,其本質是一個簡化的servlet設計。JSP是一種動態頁面設計,它的主要目的是將表示邏輯從servlet中分離出來。
JVM只能識別Java代碼,不能識別JSP,JSP編譯后變成了servlet,web容器將JSP的代碼編譯成JVM能夠識別的Java類(servlet)。
JSP有內置對象、servlet沒有內置對象。
jsp 有哪些內置對象?作用分別是什么?
JSP有九大內置對象:
pageContext:頁面上下文對象,相當于頁面中所有功能的集合,通過它可以獲取JSP頁面的out、request、response、session、application對象。
request:請求對象
response:輸出對象
session:會話對象
application:應用程序對象,application實現了用戶間數據的共享,可存放全局變量,它開始于服務器啟動,知道服務器關閉。
page:就是JSP本身。
exception:獲取異常信息
out:out用于在web瀏覽器內輸出信息,并且管理應用服務器上的輸出緩沖區,作用域page。
config:取得服務器的配置信息。
forward 和 redirect 的區別?
forward是直接請求轉發;redirect是間接請求轉發,又叫重定向。
forward,客戶端和瀏覽器執行一次請求;redirect,客戶端和瀏覽器執行兩次請求。
forward,經典的MVC模式就是forward;redirect,用于避免用戶的非正常訪問。(例如用戶非正常訪問,servlet就可以將HTTP請求重定向到登錄頁面)。
forward,地址不變;redirect,地址改變。
forward常用方法:RequestDispatcher類的forward()方法;redirect常用方法:HttpServletRequest類的sendRedirect()方法。
jsp 有哪幾個作用域?
application、session、request、page
更多關于“Java培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓經驗,課程大綱更科學更專業,有針對零基礎的就業班,有針對想提升技術的好程序員班,高品質課程助力你實現java程序員夢想。