标签:content code col 请求 public .com tle odi png
JSP自带的API包含4个包,可通过Tomcat的官网查看,JSP和EL的API是分开的
javax.servlet.jsp // 包含用于Servlet/JSP容器将JSP页面翻译为Servlet的核心接口和类。 javax.servlet.jsp.el // 提供了一组必须由Servlet/JSP容器支持,以便在JSP页面中使用的表达式语言的类 javax.servlet.jsp.target // 包含用于开发自定义标签的类型 javax.el // 提供了统一表达式语言的API
其中两个重要的接口是JspPage接口和HttpJspPage接口。HttpJspPage接口是JspPage接口的子接口,JspPage接口是Servlet接口的子接口。
所有的JSP页面实现类必须实现JspPage接口或HttpJspPage接口。
public interface JspPage extends javax.servlet.Servlet public interface HttpJspPage extends JspPage
JSP页面的本质是一个Servlet。JSP页面在JSP容器中运行,一个Servlet容器通常也是JSP容器。
1)将JSP页面转换到JSP页面实现类(即将JSP翻译成Servlet),该实现类的类名由Servlet/JSP容器生成。该实现类是一个实现了javax.servlet.jsp.JspPage接口或javax.servlet.jsp.HttpJspServlet接口的Java类,因此是一个Servlet。
2)Servlet/JSP容器编译转换得到的Servlet类,并装载和实例化该类,像一个正常的Servlet一样处理。
对于同一个JSP页面的后续请求,Servlet/JSP容器会先检查JSP页面是否被修改过,如果别修改过则该JSP页面会被重新翻译、编译并执行;如果没有被修改过,则执行已经在内存中的JSP Servlet。
1)JSP语法元素:由JSP容器处理的部分,这部分必须符合JSP语法规范,包括脚本元素、指令元素、动作元素、注释指令。
2)模板元素:语法元素以外的都是模板元素,模板元素会原样发送给浏览器。
在传统的HTML页面文件中,加入Java程序片段和JSP标签就构成了一个JSP页面文件,JSP页面中的程序片段代码是以 <% 和 %> 作为开始和结束标记的。
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ page import="java.util.Date" %> <%@ page import="java.text.DateFormat" %> <!DOCTYPE html> <html> <head> <meta charset="ISO-8859-1"> <title>Today‘s date</title> </head> <body> <% DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG); String date = dateFormat.format(new Date()); out.println("Today is " + date); %> </body> </html>
将该JSP页面放置在项目路径中,不需要部署描述符和注解,浏览器可以直接访问
启动Tomcat服务器,通过浏览器访问
该JSP页面翻译得到的Servlet存放在Tomcat的work/Catalina/...下
标签:content code col 请求 public .com tle odi png
原文地址:https://www.cnblogs.com/0820LL/p/9840311.html