Rumah 类库下载 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.*"%>
Salin selepas log masuk

  ② 关闭session,session默认打开。

<%@ pagesession="false" %>
Salin selepas log masuk

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

<%@ page errorPage="file"%>
Salin selepas log masuk

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

<%@ page isErrorPage="true"%>
Salin selepas log masuk

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

<%@ page pageEncoding="utf-8"%>
Salin selepas log masuk

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

<%@ page contentType="text/html; charset=utf-8"%>
Salin selepas log masuk

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

<%@ page isELInored="false" %>
Salin selepas log masuk

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

<%@page info="this JSP info" %>
Salin selepas log masuk

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

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

<%@ include page="file"%>
Salin selepas log masuk

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

<jsp:include page="file"></jsp:include>
Salin selepas log masuk

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

5.其它

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

<%= "Hello World!" %>
Salin selepas log masuk

  (2) 声明函数

<%!
     pulic void function(){
      out.println("Hello World!");
    }%>
Salin selepas log masuk

  (3)注释

 <!-- 客户端注释,客户端查看源可以看到 -->
Salin selepas log masuk
  <%-- 服务端注释,客户端查看不到 --%>
Salin selepas log masuk


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)