0%

JSP

JSP简介

​ 首先,JSP既不是一种编程语言,也不是一种文件格式,这是一种将静态标签(超文本标记语言HTML)和Java结合,以制作动态页面的技术。在JSP技术中,我们可以在HTML中插入Java代码。

​ JSP技术实现的关键在于内嵌于网络服务器的JSP引擎,服务器要根据HTTP请求需要的JSP资源,将其一步步解析为HTML资源,并返回给浏览器进行渲染展示,流程如下

  1. 转译 .jsp ----> .java
  2. 编译 .java -->.class
  3. 转化 .class-->HTML ​ 以上工作全部都由网络服务器软件完成,更详细地说,首先由服务器中的JSP引擎将客户端请求的JSP资源解析为.class文件,该文件也是Servlet类型的字节文件,最后由Servlet工具将该Servlet类型转化为HTML资源。注意上述三步中没有浏览器软件的参与,浏览器只需要渲染HTML等前端样式即可。

​ 由此可见,Servlet技术的目的不仅仅在于处理浏览器客户端的HTTP请求,同时也实现了.jsp.html的解析引擎功能。

What can browser do? 浏览器可以渲染以下几种但不完全只有以下几种资源类型

  • HTML静态网页
  • CSS 网页样式
  • JavaScript脚本,B/S交互逻辑
  • 图像类型,如jpeg gif png
  • 视频/音频等多媒体类型
  • XML 传输和存储数据
  • JSON 轻量级数据交换格式
  • PDF 文档显示
  • WebAssembly 二进制指令格式,提高浏览器应用运行性能

基础语法

JSP指令

  • <%@ page ... %> 定义页面属性,如脚本语言,字符编码,EL表达式是能等等

    1
    <%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
  • <%@ include ... %> 引入其他文件

  • <%@ taglib ... %> 引入外部标签库,其中prefix属性指调用该标签库中标签时需要使用该前缀c:<...>

    1
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>