电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

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

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

    前言

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

    JSP session對象

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

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

    在 login.jsp 頁面登錄,并跳轉到 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" >跳轉成功頁面</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>

    運行結果如下圖所示:

    login.jsp運行結果

    index.jsp運行結果

    index.jsp運行結果

    拓展

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

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

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

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

    JSP application對象

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

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

    可以將 application 對象看作 Web 應用的全局變量。一

    般用于保存應用程序的公用數據。

    application 對象在 Web 應用運行時一直存在于服務器中,非常占用資源,因此在實際開發中不推薦使用,否則容易造成內存不足等情況。

    application 對象常用方法如下:

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

    示例

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

    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>編程幫網站計數器</h2>    歡迎訪問編程幫,您是第<%=count%>位訪問客戶!</body></html>

    運行結果如下:

    首次訪問count為1

    連續刷新頁面count增加

    JSP config對象

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

    • config 對象的常用方法如下:
    • String getInitParameter(String paramname):獲取指定的初始化參數值
    • Enumeration getInitParameterNames():獲取當前頁面所有的初始化參數值
    • ServletContext getServletContext():獲取當前執行 Servlet 的 servletContext(Servlet 上下文)的值
    • String getServletName():獲取當前執行 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 名稱以及初始化參數,代碼如下:

    <%@ 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("初始化參數為:" + url + "<br>");    %></body></html>

    運行結果如下:

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

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

    標簽: JSP
    相關文章:
    主站蜘蛛池模板: 智慧物联网行业一站式解决方案提供商-北京东成基业 | 空气净化器租赁,空气净化器出租,全国直租_奥司汀净化器租赁 | 万烁建筑设计院-建筑设计公司加盟,设计院加盟分公司,市政设计加盟 | 陕西安玻璃自动感应门-自动重叠门-磁悬浮平开门厂家【捷申达门业】 | 江苏齐宝进出口贸易有限公司 | 手持式3d激光扫描仪-便携式三维立体扫描仪-北京福禄克斯 | 学考网学历中心| 电机保护器-电动机综合保护器-浙江开民| 智能电表|预付费ic卡水电表|nb智能无线远传载波电表-福建百悦信息科技有限公司 | 中央空调维修、中央空调保养、螺杆压缩机维修-苏州东菱空调 | 全自动端子机|刺破式端子压接机|全自动双头沾锡机|全自动插胶壳端子机-东莞市傅氏兄弟机械设备有限公司 | 领先的大模型技术与应用公司-中关村科金| PC构件-PC预制构件-构件设计-建筑预制构件-PC构件厂-锦萧新材料科技(浙江)股份有限公司 | 广州物流公司_广州货运公司_广州回程车运输 - 万信物流 | 欧景装饰设计工程有限公司-无锡欧景装饰官网 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 实体店商新零售|微赢|波后|波后合作|微赢集团 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 低噪声电流前置放大器-SR570电流前置放大器-深圳市嘉士达精密仪器有限公司 | led太阳能路灯厂家价格_风光互补庭院灯_农村市政工程路灯-中山华可路灯品牌 | 广域铭岛Geega(际嘉)工业互联网平台-以数字科技引领行业跃迁 | 安德建奇火花机-阿奇夏米尔慢走丝|高维|发那科-北京杰森柏汇 | 酒吧霸屏软件_酒吧霸屏系统,酒吧微上墙,夜场霸屏软件,酒吧点歌软件,酒吧互动游戏,酒吧大屏幕软件系统下载 | 压砖机、液压制砖机、静压砖机、环保砖机生产厂家—杜甫机械 | 淬火设备-钎焊机-熔炼炉-中频炉-锻造炉-感应加热电源-退火机-热处理设备-优造节能 | 太平洋亲子网_健康育儿 品质生活| 雷冲击高压发生器-水内冷直流高压发生器-串联谐振分压器-武汉特高压电力科技有限公司 | 法钢特种钢材(上海)有限公司 - 耐磨钢板、高强度钢板销售加工 阀门智能定位器_电液动执行器_气动执行机构-赫尔法流体技术(北京)有限公司 | 防爆暖风机_防爆电暖器_防爆电暖风机_防爆电热油汀_南阳市中通智能科技集团有限公司 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | 欧必特空气能-商用空气能热水工程,空气能热水器,超低温空气源热泵生产厂家-湖南欧必特空气能公司 | 合肥白癜风医院_[治疗白癜风]哪家好_合肥北大白癜风医院 | 动环监控_机房环境监控_DCIM_机房漏水检测-斯特纽 | 刺绳_刀片刺网_刺丝滚笼_不锈钢刺绳生产厂家_安平县浩荣金属丝网制品有限公司-安平县浩荣金属丝网制品有限公司 | 中开泵,中开泵厂家,双吸中开泵-山东博二泵业有限公司 | 车间除尘设备,VOCs废气处理,工业涂装流水线,伸缩式喷漆房,自动喷砂房,沸石转轮浓缩吸附,机器人喷粉线-山东创杰智慧 | 山东臭氧发生器,臭氧发生器厂家-山东瑞华环保设备 | 衬四氟_衬氟储罐_四氟储罐-无锡市氟瑞特防腐科技有限公司 | 科普仪器菏泽市教育教学仪器总厂 | 苏州工作服定做-工作服定制-工作服厂家网站-尺品服饰科技(苏州)有限公司 | 冷却塔减速机器_冷却塔皮带箱维修厂家_凉水塔风机电机更换-广东康明冷却塔厂家 |