首页 类库下载 java类库 JavaWeb之JSP基础小结

JavaWeb之JSP基础小结

Oct 11, 2016 pm 04:36 PM

下面代码演示的是JavaFX进程命令行参数的实例。大家可以参阅一下。

1.概述

  JSP文件是通过三大指令,九大对象以及JSP表达式等与HTML语句结合形成的一个文件,其本质为Servlet。简单来说,即Java代码+HTML语句。

2.运行原理

  每个JSP页面被访问时,即被JSP引擎翻译为一个Servlet源程序,该源程序再被编译成Servlet的class类文件。之后的执行流程与普通Servlet的执行一致。Servlet引擎将class类文件装载并翻译执行。

3.九大对象

  JSP有9个内置对象,不需要声明就可以使用。

  (1)request:实际就是HTTPServletRequest。

  (2)response:实际就是HTTPServletResponse。

  (3)pageContext:代表当前JSP页面,几乎包含了当前JSP页面的所以信息,也可以从该对象中获取其它八个对象。

  (4)session:代表浏览器和服务器的一次会话,是HttpSession的一个对象。

  (5)out:可以直接通过该对象的方法在页面输出文字信息或者HTML代码。

  (6)application:代表当前WEB应用,是ServletContext对象。

  (7)exception:在声明了后可以通过该对象输出异常信息。 

  (8)config:当前JSP对应的Servlet的ServletConfig对象,若要访问当前JSP的配置参数,需要映射访问才可以。

  (9)page:指向当前Jsp对应的Servlet对象的引用 ,但是为object类型。

   其中最为常用也最为重要的四个对象按作用域范围如下:

    pageContext:作用域为当前JSP页面。通过引入的文件中的变量等当前页面也可以访问。但是通过pageContext.include("file")引入文件的变量和参数并不能直接在当前页面使用和修改,该方法的实质是将file中的内容原封不动地添加在当前页面,可以理解为将HTML页面直接拼接在该位置。

    request:作用范围在请求转发的过程中一直有效。

    session:作用域为浏览器和服务器的一次会话。直观表现在浏览器的一次打开与关闭。应用案例如购物网站中购物车的实现。

    application:当前应用装载在服务器中时有效。该应用从服务器卸载或者重新装载,以及服务器关闭等都会导致该对象失效。应用案例如网站统计访问人数。

  和属性相关的方法:

    Object getAttribute(String name)获取指定的属性

    Enumerration getAttributeNames()获取所有属性组成的Enumeration对象

    removeAttribute(String name)移除指定的属性

    setAttribute(String name, Object o)设置属性

 

4.三大指令

  (1)page:声明页面信息或导入内容

    ① 导入文件所需的jar包。外部添加的jar包一般存放在Web项目下 WEB-INF\lib、

<%@ page import="java.util.*"%>
登录后复制

  ② 关闭session,session默认打开。

<%@ pagesession="false" %>
登录后复制

    ③ 当前页面出错则跳转到"file"页面。并且该跳转方式为请求转发。

<%@ page errorPage="file"%>
登录后复制

    ④ 上文的"file"页面,可以对页面错误做处理或说明,可以配合exception对象使用。

<%@ page isErrorPage="true"%>
登录后复制

    ⑤ 当前JSP页面的字符编码(JSP文件编码)

<%@ page pageEncoding="utf-8"%>
登录后复制

    ⑥ 当前JSP页面的响应类型(服务器发送给浏览器的内容编码)

<%@ page contentType="text/html; charset=utf-8"%>
登录后复制

    ⑦ 是否使用EL表达式,通常为false

<%@ page isELInored="false" %>
登录后复制

    ⑧ 指定JSP页面的信息,可以使用getServletInfo()方法获取到该字符串

<%@page info="this JSP info" %>
登录后复制

  (2)include指令:将其它文件包含进来与当前页面进行合并。这类文件通常包括文本、JSP或其他格式的文件。

    ① 静态引入:通知JSP引擎在翻译JSP页面时,将其他源文件合并到当前JSP页面转换成的Servlet源文件中。两个源文件合并为一个Servlet源文件。"file"为相对路径。

<%@ include page="file"%>
登录后复制

    ②动态引入:该句被执行时程序通过请求转发跳转到"file",执行当中的内容之后再返回执行当前页面的剩余部分,实际是两个Servlet源文件

<jsp:include page="file"></jsp:include>
登录后复制

  (3) taglib: 能够让用户根据需求自定义新的标签,便于功能的实现,但因此也导致了代码易读性不高。

5.其它

  (1) JSP表达式:可以直接将表达式中的内容显示在浏览器中

<%= "Hello World!" %>
登录后复制

  (2) 声明函数

<%!
     pulic void function(){
      out.println("Hello World!");
    }%>
登录后复制

  (3)注释

 <!-- 客户端注释,客户端查看源可以看到 -->
登录后复制
  <%-- 服务端注释,客户端查看不到 --%>
登录后复制


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)