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

首頁 > 編程 > JSP > 正文

探索JSP中的"9大內置對象!"

2019-11-14 15:10:35
字體:
來源:轉載
供稿:網友

1.什么是jsp內置對象?

jsp內置對象就是Web容器創建的一組對象,我們都知道Tomcat可以看成是一種Web容器,所以我們可以知道所謂的內置對象Tomcat創建的,使用內置對象時可以不適用new關鍵字,

直接使用即可.

2.什么是內置對象?

解析:就是Web容器創建的一組對象,當Tocmat啟動時,這組對象在Tomcat服務器啟動的時候加載到內存,可以用戶直接使用.

3.JSP內置對象都有哪些?

out(常用)out 對象用于在Web瀏覽器內輸出信息,并且管理應用服務器上的輸出緩沖區。在使用 out 對象輸出數據時,可以對數據緩沖區進行操作,及時清除緩沖區中的殘余數據,為其他的輸出讓出緩沖空間。待數據輸出完畢后,要及時關閉輸出流。
request(常用)request 對象是 javax.servlet.httpServletRequest類型的對象。 該對象代表了客戶端的請求信息,主要用于接受通過HTTP協議傳送到服務器的數據。(包括頭信息、系統信息、請求方式以及請求參數等)。request對象的作用域為一次請求。
response(常用)response 代表的是對客戶端的響應,主要是將JSP容器處理過的對象傳回到客戶端。response對象也具有作用域,它只在JSP頁面內有效。
session(常用)session 對象是由服務器自動創建的與用戶請求相關的對象。服務器為每個用戶都生成一個session對象,用于保存該用戶的信息,跟蹤用戶的操作狀態。session對象內部使用Map類來保存數據,因此保存數據的格式為 “Key/value”。 session對象的value可以使復雜的對象類型,而不僅僅局限于字符串類型。
application(常用)application 對象可將信息保存在服務器中,直到服務器關閉,否則application對象中保存的信息會在整個應用中都有效。與session對象相比,application對象生命周期更長,類似于系統的“全局變量”。

pageContext 

pageContext 對象的作用是取得任何范圍的參數,通過它可以獲取 JSP頁面的out、request、reponse、session、application 等對象。pageContext對象的創建和初始化都是由容器來完成的,在JSP頁面中可以直接使用 pageContext對象。

config 

config 對象的主要作用是取得服務器的配置信息。通過 pageConext對象的 getServletConfig() 方法可以獲取一個config對象。當一個Servlet 初始化時,容器把某些信息通過 config對象傳遞給這個 Servlet。 開發者可以在web.xml 文件中為應用程序環境中的Servlet程序和JSP頁面提供初始化參數。

page 

page 對象代表JSP本身,只有在JSP頁面內才是合法的。 page隱含對象本質上包含當前 Servlet接口引用的變量,類似于Java編程中的 this 指針。

exception

exception 對象的作用是顯示異常信息,只有在包含 isErrorPage="true" 的頁面中才可以被使用,在一般的JSP頁面中使用該對象將無法編譯JSP文件。excepation對象和Java的所有對象一樣,都具有系統提供的繼承結構。exception 對象幾乎定義了所有異常情況。在Java程序中,可以使用try/catch關鍵字來處理異常情況; 如果在JSP頁面中出現沒有捕獲到的異常,就會生成 exception 對象,并把 exception 對象傳送到在page指令中設定的錯誤頁面中,然后在錯誤頁面中處理相應的 exception 對象。

 

request如何在另一個頁面拿到值,并且解決post提交的中文亂碼問題!

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">        <title>My JSP '1.jsp' starting page</title>        <meta http-equiv="PRagma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">        <meta http-equiv="keyWords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/CSS" href="styles.css">    -->  </head>    <body>    <form action="index.jsp" method="post">        <input typr="text" name="txtName" /><br/>        <input type="password" name="txtPwd" /><br/><input type="submit" name="Login" />    </form>  </body></html>

 

另一個index.jsp頁面中寫入如下代碼

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <base href="<%=basePath%>">        <title>My JSP 'index.jsp' starting page</title>    <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css">    -->  </head>    <body>
   <%
<!-- 用post方式提交解決亂碼的方法 -->
    request.setCharacterEncoding("UTF-8");
%> <%
    <!-- request.getParameter(form表單中文本框的name名字);  用來拿到提交過來的文本框的屬性 -->
    String name=request.getParameter("txtName");    String pwd=request.getParameter("txtPwd");        %>    <%=name %><br/>    <%=pwd %>  </body></html>

運行結果如下:用戶名和密碼輸入的都是123 (當然,沒有做邏輯判定了  嘻嘻)

當點擊提交之后,跳轉到index.jsp頁面:

結果就是:

request轉發的方法

<!-- 2.jsp頁面 -->
<% if(request.getParameter("txtName").equals("123")){ String str=request.getParameter("txtName"); request.setAttribute("name", str); //轉發 request.getRequestDispatcher("index.jsp").forward(request, response); } %>

我們可以看到,通過中轉站2.jsp進行判定通過之后,轉發到歡迎頁面,但是URL中顯示的還是2.jsp

response重定向方法

<%    if(request.getParameter("txtName").equals("123")){    	String str=request.getParameter("txtName");    	request.setAttribute("name", str);    	//重定向    	response.sendRedirect("index.jsp");    }    %>

通過重定向跳轉之后,我們可以看到URL地址中變成index.jsp頁面.

request轉發和response重定向的區別

(1).Request Dispatcher.forward()是容器中控制權的轉向,在客戶端瀏覽器地址欄中不會顯示出轉向后的地址;
(2).response.sendRedirect()則是完全的跳轉,瀏覽器將會得到跳轉的地址,并重新發送請求鏈接。這樣,從瀏覽器的地址欄中可以看到跳轉后的鏈接地址。
前者更加高效,在前者可以滿足需要時,盡量使用RequestDispatcher.forward()方法.

注:在有些情況下,比如,需要跳轉到一個其它服務器上的資源,則必須使用HttpServletResponse.sendRequest()方法。

out方法的使用:

<%            out.print("我是out內置對象");        %>

其運行結果是:

session的使用方法:

<!-- 一個網頁中把變量username以username為名字保存在session上--><%session.setAttribute("username",username);%><!-- 在另一個頁面中通過getAttribute方法取得username的值--><%String username = (String)session.getAttribute("username");%><!-- "username"是傳遞變量的名字 username 是變量--><!-- session是一次會話只要瀏覽器不關閉就不會關閉會話 一般默認保存30分鐘可以根據自己的需要更改-->

application的使用方法

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><html>  <head>    <title>My JSP 'ServletContextAttribute.jsp' starting page</title>  </head>  <body>    <%      application.setAttribute("name","Hello") ;      application.removeAttribute("name") ;    %>  </body></html>ServletContextListenerDemo.java:package org.lxh.listener.app;import javax.servlet.ServletContextAttributeEvent;import javax.servlet.ServletContextAttributeListener;import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;public class ServletContextListenerDemo implements    ServletContextAttributeListener, ServletContextListener {  public void attributeAdded(ServletContextAttributeEvent arg0) {    System.out.println("** 增加屬性:" + arg0.getName() + " --> " + arg0.getValue()) ;  }  public void attributeRemoved(ServletContextAttributeEvent arg0) {    System.out.println("** 刪除屬性:" + arg0.getName() + " --> " + arg0.getValue()) ;  }  public void attributeReplaced(ServletContextAttributeEvent arg0) {    System.out.println("** 替換屬性:" + arg0.getName() + " --> " + arg0.getValue()) ;  }  public void contextDestroyed(ServletContextEvent arg0) {    System.out.println("** 容器銷毀:" + arg0.getServletContext().getRealPath("/"));  }  public void contextInitialized(ServletContextEvent arg0) {    System.out.println("** 容器初始化:" + arg0.getServletContext().getRealPath("/"));  }}

 

                                                                                         如若轉載,請標明 @小小菜鳥,飛得高

                                                            本人QQ是 : 1878321819

                                                        對jsp/servlet有興趣的可以進行交流哦!

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品小视频在线| 久久久免费电影| 1769国内精品视频在线播放| 久久免费视频在线| 福利视频第一区| 国产一区二区av| 亚洲欧美日韩精品久久亚洲区| 久久国产精品影片| 国产精品综合不卡av| 国产成人综合精品| 亚洲精品美女网站| 欧美视频中文字幕在线| 色999日韩欧美国产| 久久久久久久香蕉网| 日韩欧美在线国产| 欧美疯狂性受xxxxx另类| 北条麻妃久久精品| 亚洲精品成人网| 亚洲精品网址在线观看| 69影院欧美专区视频| 亚洲最大的成人网| 国产精品久久91| 精品女同一区二区三区在线播放| 亚洲va欧美va国产综合剧情| 亚洲影视中文字幕| 亚洲天堂2020| 亚洲男人天堂网站| 疯狂做受xxxx欧美肥白少妇| 久久香蕉国产线看观看网| 欧美一区二区三区艳史| 日韩毛片在线看| 国产精品视频免费观看www| 国产精品久久久久久久av电影| 国产美女精品免费电影| 亚洲午夜女主播在线直播| 性欧美办公室18xxxxhd| 亚洲欧美国产视频| 欧美激情一区二区久久久| 国产精品久久一区| 青青草原成人在线视频| 欧美午夜精品久久久久久久| 91网站在线免费观看| 国产精品96久久久久久又黄又硬| 久久久久久这里只有精品| 精品久久在线播放| 亚洲精品久久久久中文字幕二区| 久久av红桃一区二区小说| 欧美高清电影在线看| 亚洲精品少妇网址| 亚洲女人天堂网| 日韩中文字幕在线视频播放| 亚洲美腿欧美激情另类| 亚洲品质视频自拍网| 中文字幕久久久| 亚洲热线99精品视频| 国产精品第七十二页| 日韩电影中文字幕一区| 欧美成人自拍视频| 欧美久久久精品| 久久久亚洲国产天美传媒修理工| 亚洲石原莉奈一区二区在线观看| xxxxx成人.com| 国产精品pans私拍| 亚洲第一区中文字幕| 亚洲国产天堂网精品网站| 欧美亚洲伦理www| 成人亲热视频网站| 国产高清在线不卡| 日韩av在线免费看| 久青草国产97香蕉在线视频| 26uuu亚洲国产精品| 综合国产在线视频| 亚洲激情自拍图| 精品久久久久久中文字幕大豆网| 欧美成在线视频| 亚洲天堂开心观看| 黄色精品一区二区| 国产精品美女呻吟| 日本韩国欧美精品大片卡二| 久久伊人色综合| 亚洲人成电影在线观看天堂色| 米奇精品一区二区三区在线观看| 成人www视频在线观看| 国产精品嫩草影院一区二区| 韩国三级日本三级少妇99| 欧美国产日韩一区二区在线观看| 久热在线中文字幕色999舞| 日本视频久久久| 奇米一区二区三区四区久久| 日本亚洲欧美三级| 国产精品入口尤物| 国产成人a亚洲精品| 亚洲欧美日韩综合| 中文字幕视频在线免费欧美日韩综合在线看| 欧美麻豆久久久久久中文| 黑人狂躁日本妞一区二区三区| 国产精品九九九| 午夜精品久久久久久99热软件| 国产成人精品视频| 亚洲欧美日韩国产成人| 日韩在线视频播放| 成人午夜黄色影院| 91免费福利视频| 久久久久这里只有精品| 日韩免费黄色av| 欧美丝袜第一区| 成人黄色大片在线免费观看| 国产精品美女网站| 午夜精品国产精品大乳美女| 国产欧美精品xxxx另类| 国产欧美精品一区二区三区-老狼| 精品国产999| 免费成人高清视频| 少妇高潮久久77777| 国产精品久久久久aaaa九色| 欧美成人亚洲成人| 亚洲人成电影网站色| 欧美午夜视频在线观看| 亚洲欧美国产制服动漫| 中文字幕久久久av一区| 这里只有精品久久| 久久国产加勒比精品无码| 国产91精品视频在线观看| 国产成人91久久精品| 亚洲第一区在线观看| 成人做爰www免费看视频网站| 国产在线观看精品一区二区三区| 亚洲精品久久7777777| 91精品久久久久久久久青青| 日韩精品极品在线观看播放免费视频| 亚洲成年人在线| 欧美日韩视频在线| 97精品国产91久久久久久| 久久精品男人天堂| 国产欧美日韩中文| 亚洲欧美日韩中文在线制服| 欧美精品久久一区二区| 中文国产亚洲喷潮| 亚洲欧美另类在线观看| 成人有码视频在线播放| 亚洲欧美999| 91在线高清免费观看| www.久久草.com| 中文字幕在线看视频国产欧美| 日韩电视剧在线观看免费网站| 日韩av免费在线| 亚洲国产精品久久久| 欧美成人精品影院| 国产亚洲欧美日韩精品| 亚洲久久久久久久久久| 欧美激情亚洲自拍| 黑人巨大精品欧美一区二区一视频| 中国人与牲禽动交精品| 亚洲乱码国产乱码精品精天堂| 日韩视频免费大全中文字幕| 色偷偷综合社区| 日韩欧美亚洲成人| 国产日韩欧美在线看| 亚洲精品一区二区三区不| 精品久久久久久久久久久| 91精品国产高清自在线| 美女视频黄免费的亚洲男人天堂| 91在线播放国产| 久久精品视频免费播放|