zoukankan      html  css  js  c++  java
  • JSP基础总结(运行机制、脚本元素、指令元素、动作元素)

    JSP的运行机制:
    1、转译阶段:JSP页面转换成Servlet类;
    2、请求阶段:Servlet类执行,将相应结果发送至客户端。
    流程解释:
    1、用户访问某个JSP页面
    2、服务器找到相应的JSP页面
    3、服务器将JSP转译成Servlet的源代码
    4、服务器将Servlet源代码编译为class文件
    5、服务器将class文件加载到内存并执行
    6、服务器将class文件执行后生成的HTML代码发送给客户机,客户机浏览器根据相应的HTML代码进行显示。
    *如果该JSP页面不是第一次执行,那么只会执行请求阶段,所以第二次执行JSP要比第一次快。

    JSP脚本元素:
    1、声明语句:<%! 声明语句 %>。使用声明语句的变量为全局变量,也就是说当有多个用户在执行此JSP页面时,将共享该变量。
    2、JSP Scriptlets:<% Java代码 %>。可以包含多个语句,如方法,变量,表达式等。
    3、JSP表达式:<%= Java代码 %>。JSP表达式中的代码会首先执行,然后转换成字符串并显示到网页上。
    4、注释:HTML注释格式,<!-- 注释内容 -->,该注释会在jsp源代码中显示;jsp注释格式,<%-- 注释内容 --%>,不会在jsp源代码中显示;还可以使用Java注释,如“//”,同样不会在源代码中显示。

    JSP指令元素
    1、page指令:主要用来设定JSP页面的全局属性,语法格式:<%@ page 属性1="属性值1" 属性2="属性值2" %>。几个常用属性的作用如下:
      1、language,用来声明所使用的脚本语言种类,一般为java。
      2、extends,用来指定该JSP页面生成的Servlet继承于哪个父类。一般不建议使用。
      3、import,用来指定导入的Java包。默认导入的包括
      java.lang.*;javax.servlet.*;javax.servlet.jsp.*;javax.servlet.http.*;
      4、session,指定该JSP页面中是否可以使用session对象。如果为true,则可以使用。
      5、buffer,指定输出流是否具有缓冲区,并设置大小。<%@page buffer="none|40KB"%>
      6、autoFlush,指定缓冲区是否自动进行强制输出。
      7、isThreadSafe,指定该JSP文件是否支持多线程使用。
      8、contentType,指定该JSP文件的MIME格式,以及网页编码格式。
      9、pageEncoding,指定网页的编码格式。
    2、include指令:用于在JSP文件中插入一个包含文件或代码的文件。只有当被包含的文件执行完成后,该JSP文件才会恢复执行。
    语法格式为:<%@ include file="被包含文件地址" %>。
    只是将页面静态的包含进来,如果被包含的文件中含有JSP代码,则会执行该代码,不会区分文件是动态还是静态。比如txt文件中含有JSP代码,则会执行代码,而不是将内容打出来。
    3、taglib指令:用来声明JSP文件使用了自定义标签,同时引用所指定的标签库并设置标签库的前缀。
    语法格式:<%@ taglib prefix="tagPrefix" uri="URIToTagLibrary"%>

    JSP 动作元素
    1、<jsp:include>动作元素,用来包含静态和动态的文件,若为静态,则只单纯的加到JSP页面中;若为动态,则会先进行处理,然后将处理的结果加到JSP页面中。
    语法格式:<jsp:include page="包含文件URL地址" flush="true|false">
    flush属性用来指定缓冲区满时,是否进行清空。
    2、<jsp:forward>动作元素,用来转移用户的请求,是服务器端跳转,用户的地址栏不发生变化。
    语法格式:<jsp:forward page="URL地址">
    3、<jsp:param>动作元素,用来传递参数,一般与include和forward联合使用。
    语法格式:<jsp:param name="" value=""/>
    代码范例:
    主页面:
    <jsp:include page="sample.jsp">
    <jsp:param name="age" value="19"/>
    </jsp:include>
    被包含页:
    <%
    String str=request.getParameter("age");//获取主页面的参数
    %>
    <%= "age参数值为:"+str%>
    代码范例://使用forward的范例
    <jsp:forward page="sample.jsp">
    <jsp:param name="age" value="19"/>
    </jsp:forward>
    4、<jsp:plugin>动作元素,用来在JSP中嵌入Java插件,比如Applet。
    语法格式:
    <jsp:plugin
    type="bean|applet"
    name="Applet名称"
    code="Java类名"
    codebase="Java类所在目录"
    align="对齐方式"
    height="高度"
    width="宽度"
    ……
    </jsp:plugin>
    代码范例:
    <jsp:plugin code="Clock.class" codebase="Applet" type="applet"></jsp:plugin>
    5、<jsp:params>动作元素,用来给Bean和Applet传递参数,一般搭配<jsp:param>使用。
    语法格式:
    <jsp:plugin>
    <jsp:params>
    <jsp:param name="" value=""/>
    </jsp:params>
    </jsp:plugin>

  • 相关阅读:
    MUTC2013 E-Deque-hdu 4604
    MUTC7 C
    MUTC7 A-As long as Binbin loves Sangsang
    MUTC2013 J-I-number-hdu4608
    MUTC2013 H-Park Visit-hdu4607
    判断点是否在多边形内 扫描法
    蓝桥杯 基础练习 十六进制转八进制
    判断点是否在三角形内
    判断点在线段上
    向量的叉乘
  • 原文地址:https://www.cnblogs.com/xingzhui/p/5777652.html
Copyright © 2011-2022 走看看