zoukankan      html  css  js  c++  java
  • jsp小结

     JSP执行步骤

    完整步骤:

    第一步:用户通过浏览器发出一个Http请求;

    第二步:web服务器识别是对jsp页面的请求;

    第三步:jsp容器通过jsp引擎将jsp页面转化为servlet代码(纯java代码);

    第四步:servlet容器通过servlet引擎加载servlet类,常驻内存,并以html的形式做出response返回给web容器。

    第五步:web服务器将Http Response返回给客户端浏览器,这个response实质上是jsp在服务器端动态产生的在客户端静态显示的html文件。

    JSP生命周期

    public void jspInit(){
    // Initialization code...
    }
    void _jspService(HttpServletRequest request,
    HttpServletResponse response)
    {
    // Service handling code...
    }
    public void jspDestroy()
    {
    // Your cleanup code goes here.
    }

    JSP语法

    JSP脚本

    //java代码
    <% out.println("hello world");%>
    //jsp变量或者方法声明
    <%!int i=0;int a,b,c;%>
    //赋值
    <%=(new java.util.Date()).toLocaleString() %>

    JSP注释

    <%--  --%>  //服务器端注释,客户端不可见,jsp引擎不转化
    <!-- -->  //客户端可见注释

    JSP动作

    <jsp:include page="" />

    以下是对 include 两种用法的区别 , 主要有两个方面的不同 ;

        一 : 执行时间上 :

        <%@ include file="relativeURI"%> 是在翻译阶段执行

        <jsp:include page="relativeURI" flush="true" /> 在请求处理阶段执行 .

        二 : 引入内容的不同 :

        <%@ include file="relativeURI"%>

        引入静态文本 (html,jsp), 在 JSP 页面被转化成 servlet 之前和它融和到一起 .因此两个页面不允许有相同的变量

        <jsp:include page="relativeURI" flush="true" /> 引入执行页面或 servlet 所生成的应答文本

    <jsp:useBean id="name" class="package.class" scope="application/page/request"/>

    <jsp:useBean>指令用于在scope内定位或实例化JavaBeans组件

    <jsp:setProperty name="name" property="" value=""或者param=""/>

    通过上述指令加载一个类后,就可以通过<jsp:setProperty>设置属性,如果property="*",那么传递的参数会和所有的property进行匹配赋值。

    <jsp:getProperty name="name" property="" />

    获得某个javabean组件的属性值,并且直接输出在html流中。

    <jsp:forward page="" ><jsp:param name="" value=""></jsp:forward>

    forward指令就相当于请求转发,可以跳转到静态或者是动态的页面。forward指令可以包含param标签,在页面跳转时有额外的参数请求。

    JSP指令

    //定义页面作用域的属性,例如:脚本语言,编码方式,异常处理
    <%@ page...%>
    //加载该jsp文件的时候,包含其他静态的jsp文件
    <%@ include ...%>
    //
    <%@ taglib...%>

     JSP内置对象

    request :用户请求后JSP引擎创建一个请求实例

    response :通过response可以添加cookie

    out: 输出流对象,out.flush()可以清空缓冲区

    session:客户端建立连接后就建立一个会话

    application:ServletContext的一个实例,application对于web服务器下某一个web应用中的所有servlet共享

    config,pageContext,page ,exception,

  • 相关阅读:
    2020 HDU校赛 Problem J
    2020 HDU校赛 Problem I
    2020年HDU校赛 Problem A
    HDU 2553 N皇后 (dfs+回溯)
    D
    #6177. 「美团 CodeM 初赛 Round B」送外卖2(floyed + 三进制枚举 )
    E
    B
    大数加法模板(可能有问题,目前没发现)
    H
  • 原文地址:https://www.cnblogs.com/kundeg/p/6441495.html
Copyright © 2011-2022 走看看