国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Java之JSP教程九大內(nèi)置對象詳解(中篇)

瀏覽:226日期:2022-06-07 17:11:24
目錄
  • 前言
  • JSP session對象
    • 拓展
  • JSP application對象
    • 示例
  • JSP config對象

    前言

    之前我們在這篇文章Java之JSP教程九大內(nèi)置對象詳解(上篇)中,講解了三個對象,接下來我們講解下面的三個對象

    JSP session對象

    JSP session 是 javax.servlet.http.HttpSession 的實例對象,主要用來訪問用戶數(shù)據(jù),記錄客戶的連接信息。

    HTTP 協(xié)議是一種無狀態(tài)的協(xié)議(即不保存連接狀態(tài)的協(xié)議)。每次用戶向服務(wù)器發(fā)出請求,且服務(wù)器接收請求并返回響應(yīng)后,該連接就被關(guān)閉了,服務(wù)器端與客戶端的連接被斷開。此時,服務(wù)器端不保留連接的有關(guān)信息,要想記住客戶的連接信息,就用到了 session 對象。

    在 login.jsp 頁面登錄,并跳轉(zhuǎn)到 index.jsp。login.jsp 代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html><html><head></head><body>    <h2>用戶登錄</h2>    <form action="index.jsp">用戶名: <input type="text" name="username" /> <br> <br>密碼: <input type="text" name="pass" /> <br> <br><input type="submit" value="登錄" />    </form></body></html>

    在 index.jsp 中,使用 session.setAttribute() 方法將用戶名存儲到 session 對象中,代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html><html><head></head><body>    <%String username = request.getParameter("username");out.print("歡迎" + username + "登錄");session.setAttribute("sessname", username);    %>    <a href="success.jsp" rel="external nofollow" >跳轉(zhuǎn)成功頁面</a></body></html>

    在 success.jsp 中,使用 session.getAttribute() 方法獲取 session 對象中的用戶名,并顯示。success.jsp 代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html><html><head></head><body>    <%String name = (String) session.getAttribute("sessname");out.print("您好,您的用戶名為:" + name);    %></body></html>

    運行結(jié)果如下圖所示:

    login.jsp運行結(jié)果

    index.jsp運行結(jié)果

    index.jsp運行結(jié)果

    拓展

    如果使用的是 Tomcat 服務(wù)器,可以在 web.xml 文件中添加以下內(nèi)容來設(shè)置 session 的有效時間:

    <session-config>    <session-timeout>15</session-timeout></session-config>

    這里單位是分鐘,即表示 session 對象的有效時間為 15 分鐘,Tomcat 默認(rèn)有效時間為 30 分鐘。

    如果在 web.xml 中配置的是15分鐘,則 getMaxInactiveInterval( ) 方法返回 900。

    JSP application對象

    JSP application 是 javax.servlet.ServletContext 的實例對象。

    在服務(wù)器部署應(yīng)用和項目時,Web 容器僅創(chuàng)建一次 ServletContext 實例,也就是說 application 設(shè)置的任何屬性和值可以用于整個應(yīng)用(所有 JSP 頁面)。

    可以將 application 對象看作 Web 應(yīng)用的全局變量。一

    般用于保存應(yīng)用程序的公用數(shù)據(jù)。

    application 對象在 Web 應(yīng)用運行時一直存在于服務(wù)器中,非常占用資源,因此在實際開發(fā)中不推薦使用,否則容易造成內(nèi)存不足等情況。

    application 對象常用方法如下:

    • Object getAttribute(String attributeName):獲取 attributeName(屬性名稱)對應(yīng)的 object
    • void setAttribute(String attributeName, Object object):設(shè)置attributeName對應(yīng)的屬性值
    • Enumeration getAttributeNames():返回 application 對象中所有的 attributeName
    • void removeAttribute(String objectName):刪除 application 對象中指定 attributeName 的屬性
    • String getServerInfo():獲取當(dāng)前 Servlet 的版本信息
    • String getRealPath(String value):獲取指定文件的實際路徑

    示例

    可以使用 application 對象來保存 JSP 頁面的訪問人數(shù),也就是我們常說的網(wǎng)站計數(shù)器,下面通過一個例子來演示。

    index.jsp 代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ page import="java.util.*"%><!DOCTYPE html><html><head></head><body>    <%Integer count = (Integer) application.getAttribute("count");if (count == null) {    count = 1;} else {    count++;}application.setAttribute("count", count);    %>    <h2>編程幫網(wǎng)站計數(shù)器</h2>    歡迎訪問編程幫,您是第<%=count%>位訪問客戶!</body></html>

    運行結(jié)果如下:

    首次訪問count為1

    連續(xù)刷新頁面count增加

    JSP config對象

    JSP config 是 javax.servlet.ServletConfig 的實例對象,一般用于獲取頁面和 Servlet 的初始化參數(shù)。

    • config 對象的常用方法如下:
    • String getInitParameter(String paramname):獲取指定的初始化參數(shù)值
    • Enumeration getInitParameterNames():獲取當(dāng)前頁面所有的初始化參數(shù)值
    • ServletContext getServletContext():獲取當(dāng)前執(zhí)行 Servlet 的 servletContext(Servlet 上下文)的值
    • String getServletName():獲取當(dāng)前執(zhí)行 Servlet 的名稱

    示例

    在 web.xml 文件中定義 Servlet 名稱和映射,然后使用 config 對象獲取信息。

    web.xml 代碼如下:

    <?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/javaee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"    version="2.5">    <servlet><servlet-name>BianChengBangServlet</servlet-name><jsp-file>/index.jsp</jsp-file><init-param>    <param-name>url</param-name>    <param-value>http://www.biancheng.net</param-value></init-param>    </servlet>    <servlet-mapping><servlet-name>BianChengBangServlet</servlet-name><url-pattern>/index</url-pattern>    </servlet-mapping></web-app>

    在 index.jsp 頁面獲取 Servlet 名稱以及初始化參數(shù),代碼如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html><html><head></head><body>    <%String sname = config.getServletName();String url = config.getInitParameter("url");out.print("Servlet名稱為:" + sname + "<br>");out.print("初始化參數(shù)為:" + url + "<br>");    %></body></html>

    運行結(jié)果如下:

    注意:因為 JSP 頁面的實質(zhì)是 Servlet,所以一般很少在 JSP 頁面中使用 config 對象。

    到此這篇關(guān)于Java之JSP教程九大內(nèi)置對象詳解(中篇)的文章就介紹到這了,其他兩個部分的內(nèi)容(上、下篇)請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

    標(biāo)簽: JSP
    相關(guān)文章:
    主站蜘蛛池模板: 在线中文字幕亚洲 | 欧美三级视频在线观看 | 99九九99九九九视频精品 | 国产视频二区在线观看 | 成人福利网站含羞草 | 亚洲毛片免费观看 | 亚洲精品成人一区二区www | 免费观看成为人视频 | 免费国产高清精品一区在线 | 欧美久久久久欧美一区 | 老司机毛片 | 欧美一级毛片日本 | 成人男女啪啪免费观看网站 | 杨幂国产精品福利在线观看 | 97在线观看完整免费 | 女女同性一区二区三区四区 | 日本一本久道 | 日韩美女一级视频 | 天堂中文资源在线8 | a国产在线| 在线播放亚洲美女视频网站 | 国产日本欧美高清免费区 | 久久国产视频网 | 成人欧美精品一区二区不卡 | 成人国产精品一级毛片天堂 | 免费一级毛片在线播放欧美 | av狼论坛| 手机在线日韩高清理论片 | 免费ab| 91看片淫黄大片欧美看国产片 | 精品国产一区二区三区免费看 | 国产一区二区三区久久小说 | 99视频在线国产 | 亚洲综合色一区二区三区小说 | 国产精品久久久 | 国产精品亚洲片在线不卡 | 91影视永久福利免费观看 | 国产特黄一级毛片特黄 | 久草免费资源 | 日日操夜夜爽 | 国产高清一区二区三区免费视频 |