国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP內置對象(下)

2019-11-14 23:08:45
字體:
來源:轉載
供稿:網友
jsp內置對象(下)


JSP中共有9大內置對象:

  1. out對象
  2. requset對象
  3. response對象
  4. session對象
  5. pageContext對象
  6. application對象
  7. config對象
  8. page對象
  9. exception對象

JSP內置對象(上):http://wxmimperio.coding.io/?p=280


5. pageContext對象

pageContext對象被封裝成javax.servlet.jsp.pageContext接口,他為JSP頁面包裝頁面的上下文,管理對屬于JSP中特殊可見部分中已命名對象的訪問。它的創建和初始化都是由容器完成的,pageContext對象可以訪問到本頁面所在的session,也可以去本頁面 所在的application的某一屬性,pageContext對象相當于頁面中所有功能的集成。JSP頁面里可以直接使用pageContext對象的句柄,pageContext對象的getXXX()、setXXX()和findXXX()方法可以用來根據不同的對象范圍實現對這些對象的管理。

常用的方法:

  • forward(java.lang,String relativeUrlPath):把頁面重定向到另外一個頁面或者Servlet組件
  • getRequset():返回當前的requset對象
  • getResponse():返回當前的response對象
  • getServletConfig():返回當前頁面的ServletConfig對象
  • getServletContext():返回ServletContext對象,這個對象對所有的頁面都是共享的
  • getSession():返回當前頁面的Session對象
  • setAttribute():用來設置默認頁面范圍,或特定對象范圍之中的已命名對象
  • getAttribute(java.lang.String name[,int scope]):scope參數是可選的,用來檢索一個特定的已命名的對象范圍,并且還可以通過調用getAttributeNamesInScope()方法,檢索對某個特定范圍的每個屬性String字符串名稱的枚舉

代碼:

pageContextForm.jsp

  • <formmethod="post"action="pageContextObject.jsp">
  • <table>
  • <tr>
  • <td>name:</td>
  • <td><inputtype="text"name="name"></td>
  • </tr>
  • <trcolspan="2">
  • <td><inputtype="submit"value="提交"></td>
  • </tr>
  • </table>
  • </form>

pageContextObject.jsp

pageContext2.jsp

PS:


6.application對象

application對象為多個應用程序保存信息,對于一個容器而言,每個用戶都共享使用一個application對象,在任何地方對application對象屬性的操作,都將影響到其他用戶對此的訪問,這和session對象是不同的。啟動服務器后就會自動創建application對象,這個對象會一直保存,直到服務器關閉,application對象是ServletContext類的一個實例。

常用的方法:

  • getAttributeNames():返回所有的application對象的屬性的名字,其結果是一個枚舉類型的實例
  • getServletInfo():返回Servlet編譯器的版本信息
  • getAttribute(String name):返回由name指定的名字的application對象的屬性值
  • setAttribution(String name,Object object):設置由name指定名字的application對象的屬性值object

代碼:(簡單計數器

applicationCount.jsp

  • <%
  • //計數器設置
  • intcount=0;
  • /*counter_name為計數器的名字
  • 對于不同的頁面,使用不同的計數器名字,這樣就可以為不同的頁面進行計數*/
  • Stringcounter_name=request.getParameter("counter_name");
  • try{
  • //application.getAttribute方法
  • count=Integer.parseInt((application.getAttribute(counter_name).toString()));
  • }catch(Exceptione){
  • }
  • out.println("此頁面訪問了"+count+"次");
  • count++;
  • //application.setAttribute方法
  • application.setAttribute(counter_name,newInteger(count));
  • application.setAttribute("username","admin");
  • application.setAttribute("passWord","123456");
  • %>

applicationObject.jsp

  • <body>
  • <%--通過include指令把appicationCount頁面代碼引入--%>
  • <jsp:includepage="appicationCount.jsp">
  • <jsp:paramname="counter_name"value="applicationObject"></jsp:param>
  • </jsp:include>
  • <br>從application獲得所有屬性=
  • <%
  • Enumeratione=application.getAttributeNames();
  • while(e.hasMoreElements()){
  • out.println(e.nextElement()+"&nbsp;&nbsp;");
  • }
  • %>
  • <br>Servlet編譯器的版本信息:<%=getServletInfo()%>
  • </body>

7.config對象

config對象被封裝成javax.servlet.ServletConfig接口,他表示Servlet的配置,在一個Servlet初始化時,jsp引擎向他傳遞信息用的,此信息包括Servlet初始化時所要用到的參數以及服務器的有關信息。

常用的方法:

  • getServletContext():返回執行者的Servlet上下文
  • getServletName():返回Servlet的名字
  • getInitParameter(String name):返回名字為name的初始參數的值
  • getInitParameterNames():返回這個JSP的所有的初始參數的名字

代碼:(上面application對象寫的計數器有個缺陷,就是當服務器重啟后,計數器就會從0重新開始,通過在服務器設置計數的初始值來解決)

configObject.jsp

  • <%
  • intorg=0;
  • intcount=0;
  • try{
  • //config.getInitParameter方法
  • org=Integer.parseInt(config.getInitParameter("counter"));
  • }catch(Exceptione){
  • out.println("org:"+e);
  • }
  • try{
  • count=Integer.parseInt((application.getAttribute("config_counter").toString()));
  • }catch(Exceptione){
  • out.println("config_counter"+e);
  • }
  • if(count<org)count=org;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富平县| 延川县| 温泉县| 东阳市| 邵阳市| 湟源县| 陇西县| 旬邑县| 郧西县| 云阳县| 葵青区| 盘锦市| 达孜县| 余姚市| 吉安市| 齐齐哈尔市| 文安县| 南投市| 深圳市| 昌图县| 鄱阳县| 玉树县| 绥滨县| 株洲市| 萍乡市| 罗山县| 华坪县| 镇雄县| 桐梓县| 江北区| 噶尔县| 麻城市| 海阳市| 图木舒克市| 武隆县| 大同县| 余干县| 林甸县| 巨鹿县| 寿光市| 阿拉善盟|