国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JSP 內(nèi)置對象(一)

lordharrd / 449人閱讀

摘要:提供了個內(nèi)置對象該對象會自動進(jìn)行實(shí)例化操作種屬性范圍只在一個保存屬性跳轉(zhuǎn)無效一次請求保存屬性跳轉(zhuǎn)依舊有效同一會話有效整個服務(wù)器上保存所有用戶都可使用屬性一個屬性設(shè)置在本頁上跳轉(zhuǎn)后無法獲得下午設(shè)置屬性重中取出屬性姓名生日屬性服務(wù)

jsp提供了9個內(nèi)置對象,該對象會自動進(jìn)行實(shí)例化操作

4種屬性范圍

page 只在一個保存屬性,跳轉(zhuǎn)無效
request 一次請求保存屬性,跳轉(zhuǎn)依舊有效
session 同一會話有效
application 整個服務(wù)器上保存,所有用戶都可使用

page屬性

一個屬性設(shè)置在本頁上,跳轉(zhuǎn)后無法獲得

<%@ page import="java.util.Date" %><%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午1:02
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    // 設(shè)置page屬性
    pageContext.setAttribute("name", "ming");
    pageContext.setAttribute("birtday", new Date());
%>
<%
    // 重page中取出屬性
    String username = (String)pageContext.getAttribute("name");
    Date userbirthday = (Date)pageContext.getAttribute("birtday");
%>
姓名 <%=username%>
生日 <%=userbirthday%>


request 屬性

服務(wù)器跳轉(zhuǎn)后,屬性會被繼續(xù)保存
瀏覽器的URL地址會發(fā)生改變

<%@ page import="java.util.Date" %><%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午1:02
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    request.setAttribute("name", "ming");
    request.setAttribute("birthday", new Date());
%>



<%@ page import="java.util.*" %><%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午1:29
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title



<%=(String)request.getAttribute("name")%>
<%=(Date)request.getAttribute("birthday")%>


session屬性

當(dāng)一個屬性設(shè)置以后,任何一個與設(shè)置頁面相關(guān)的頁面都可以取得
即,session,session屬于服務(wù)器端保存.

cokice 屬于客戶端保存
<%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午3:07
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.util.*" %>


    Title


<%
    // 設(shè)置session屬性范圍
    session.setAttribute("name", "ming");
    session.setAttribute("birthday", new Date());
%>

超級鏈接跳轉(zhuǎn)


<%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午3:07
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.util.*" %>


    Title


<%
    // 取出session屬性
    String username = (String)session.getAttribute("name");
    Date userbirthday = (Date)session.getAttribute("birthday");
%>
<%=username%>
<%=userbirthday%>


application

此為公共參數(shù)
此屬性保存在服務(wù)器上

<%@ page import="java.util.Date" %><%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午10:17
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    application.setAttribute("name", "ming");
    application.setAttribute("birthday", new Date());
%>

超級鏈接獲得屬性


<%@ page import="java.util.Date" %><%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午10:20
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    // application中獲得屬性
    String username = (String)application.getAttribute("name");
    Date userbirthday = (Date)application.getAttribute("birthday");
%>
<%=username%>
<%=userbirthday%>


request對象

接收客戶端發(fā)送的請求,請求的參數(shù),頭部信息.




    
    Title


    
<%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-10
  Time: 下午11:54
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    // 接收參數(shù)
    String content = request.getParameter("info");
%>
<%=content%>


接收全部請求參數(shù)

用getParameterNames

顯示全部頭信息

使用getHeaderNames()

角色驗(yàn)證

額...依舊沒啥東東
學(xué)過

response 定時跳轉(zhuǎn)

定時跳轉(zhuǎn)屬于客戶端跳轉(zhuǎn)

操作cookie

額..依舊沒啥
在response中調(diào)用addCookie
需要注意的是會返回一個jsessionid

session

當(dāng)服務(wù)器端使用session的時候,可以保存在redis中
會有一個不重復(fù)的編號,即session id

cookie中保存的jsessionid為同樣道理
登錄 注銷

實(shí)現(xiàn)思路,設(shè)置session范圍的屬性,需要驗(yàn)證的頁面進(jìn)行判斷session
即,保存用戶的信息,使用session進(jìn)行保存

<%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-11
  Time: 下午9:17
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


    
用戶名 密碼
<% // 用戶名 密碼 // 獲得name String name = request.getParameter("uname"); // 獲得password String password = request.getParameter("upass"); // 進(jìn)行用戶名密碼比對 if(!(name==null||"".equals(name) || password == null || "".equals(password)) ){ if("admin".equals(name) && "admin".equals(password)){ // 跳轉(zhuǎn) response.setHeader("refresh", "2;URL=welcome.jsp"); // 設(shè)置session session.setAttribute("userid", name); %>

用戶登錄成功,兩秒后將會跳轉(zhuǎn)到歡迎頁!

如果沒有跳轉(zhuǎn),點(diǎn)擊這里

<% }else{ %>

用戶名密碼錯誤

<% } } %>
<%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-11
  Time: 下午10:06
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    // 設(shè)置兩秒跳轉(zhuǎn)
    response.setHeader("refresh", "2;URL=login.jsp");
    // 清除session
    session.invalidate();
%>

成功退出本系統(tǒng),兩秒跳轉(zhuǎn)回首頁

如果沒有跳轉(zhuǎn),訪問點(diǎn)我

<%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-11
  Time: 下午9:59
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    // 判斷此用戶的session是否設(shè)置過
    if(session.getAttribute("userid")!=null){
        %>
            

歡迎<%=session.getAttribute("userid")%>

注銷登錄點(diǎn)我

<% }else{ %>

非法訪問

<% } %>
判斷新用戶

使用isnew的方式,
原理,在第一次訪問的時候,給客戶端設(shè)置cokkie,然后再次訪問的時候,會帶上cokkie中的jsessionid,用來判斷是否為新用戶

用戶操作時間

使用getCreationTime獲取第一個session創(chuàng)建的session時間,和最后一次操作的時間,用來判斷秒數(shù)

application對象

用來獲取serlet對象上下文 ServletContext表示整個容器的操作
使用表單輸入要保存的文件名稱和內(nèi)容,直接在web項(xiàng)目的根目錄的note文件夾中保存文件




    
    Title


    
輸入文件名稱
輸入文件內(nèi)容
<%@ page import="java.io.File" %>
<%@ page import="java.io.PrintStream" %>
<%@ page import="java.io.FileOutputStream" %>
<%@ page import="java.util.Scanner" %>
<%@ page import="java.io.FileInputStream" %><%--
  Created by IntelliJ IDEA.
  User: ming
  Date: 19-3-11
  Time: 下午10:46
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title


<%
    // 接收保存的文件名稱
    String name = request.getParameter("filename");
    // 接收文件內(nèi)容
    String content = request.getParameter("filecontent");
    // 獲得文件名稱
    String fileName = this.getServletContext().getRealPath("/") + "note" + File.separator + name;
    // 獲得文件對象
    File file = new File(fileName);
    // 用于判斷父文件夾是否存在
    if(!file.getParentFile().exists()){
        // 創(chuàng)建文件夾
        file.getParentFile().mkdir();
    }
    // 定義打印流對象
    PrintStream printStream = null;
    // 創(chuàng)建一個到文件的輸入流
    printStream = new PrintStream(new FileOutputStream(file));
    // 往流中輸入內(nèi)容
    printStream.println(content);
    // 關(guān)閉流
    printStream.close();
%>
<%
    // 通過Scanner獲取流的輸入
    Scanner scanner = new Scanner(new FileInputStream(file));
    // 設(shè)置讀取分隔符
    scanner.useDelimiter("
");
    // 新建緩沖區(qū)
    StringBuffer stringBuffer = new StringBuffer();
    // 讀取內(nèi)容,保存進(jìn)入緩沖區(qū)
    while(scanner.hasNext()){
        stringBuffer.append(scanner.next()).append("
"); } // 關(guān)閉 scanner.close(); %> <%=stringBuffer%>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/73698.html

相關(guān)文章

  • JSP第二篇【內(nèi)置對象的介紹、4種屬性范圍、應(yīng)用場景】

    摘要:什么是內(nèi)置對象引擎在調(diào)用對應(yīng)的時,會傳遞或創(chuàng)建個與開發(fā)相關(guān)的對象供使用。九個內(nèi)置對象對象對象的得到緩存大小得到未使用緩存的大小對象用于向?yàn)g覽器輸出數(shù)據(jù),與之對應(yīng)的是的對象。種屬性范圍到目前為止,我們已經(jīng)學(xué)了種屬性范圍了。 什么是JSP內(nèi)置對象 JSP引擎在調(diào)用JSP對應(yīng)的jspServlet時,會傳遞或創(chuàng)建9個與web開發(fā)相關(guān)的對象供jspServlet使用。JSP技術(shù)的設(shè)計(jì)者為便于開...

    lookSomeone 評論0 收藏0
  • JSP面試題都在這里

    摘要:下面是我整理下來的知識點(diǎn)圖上的知識點(diǎn)都可以在我其他的文章內(nèi)找到相應(yīng)內(nèi)容。在中,尤其重要的是對象。 下面是我整理下來的JSP知識點(diǎn): showImg(https://segmentfault.com/img/remote/1460000013229216?w=4962&h=2653); 圖上的知識點(diǎn)都可以在我其他的文章內(nèi)找到相應(yīng)內(nèi)容。 JSP常見面試題 jsp靜態(tài)包含和動態(tài)包含的區(qū)別 j...

    gaosboy 評論0 收藏0
  • JSP第四篇【EL表達(dá)式介紹、獲取各類數(shù)據(jù)、11個內(nèi)置對象、執(zhí)行運(yùn)算、回顯數(shù)據(jù)、自定義函數(shù)、fn方法

    什么是EL表達(dá)式? 表達(dá)式語言(Expression Language,EL),EL表達(dá)式是用${}括起來的腳本,用來更方便的讀取對象! EL表達(dá)式主要用來讀取數(shù)據(jù),進(jìn)行內(nèi)容的顯示! 為什么要使用EL表達(dá)式? 為什么要使用EL表達(dá)式,我們先來看一下沒有EL表達(dá)式是怎么樣讀取對象數(shù)據(jù)的吧! 在1.jsp中設(shè)置了Session屬性 向session設(shè)置一個屬性 在2...

    flyer_dev 評論0 收藏0
  • JSP 學(xué)習(xí)記錄

    摘要:對象具有請求域,即完成客戶端的請求之前,該對象一直有效。提交的數(shù)據(jù)量最多不超過。安全性較低但效率比方式高。適合提交數(shù)據(jù)量大,安全性高的用戶信息。除非本次會話的所有頁面都關(guān)閉后再重新訪問某個或者,將會創(chuàng)建新的會話。 JSP 簡介 全名為Java Server Pages,其根本是一個簡化的Servlet設(shè)計(jì),實(shí)現(xiàn)了在Java當(dāng)中使用HTML標(biāo)簽。JSP是一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),也是Java...

    BearyChat 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<