JSP基础

一、JSP简介

JSP全称Java Server Pages,是一种动态网页开发技术(是Java与前端的结合)。它使用JSP标签在HTML网页中插入Java代码。标签以<% %>的形式存在。

JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。

第一个JSP程序

index.jsp

<html>
    <head>
           <title>第一个JSP程序</title>
    </head>
    <body>
           <%
                  out.println("Hello World!");
           %>
    </body>
</html>

JSP执行原理

JSP执行图

  1. 在tomca\conf\web.xml中
<servlet>
        <servlet-name>jsp</servlet-name>
        <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
 </servlet>
 <servlet-mapping>
        <servlet-name>jsp</servlet-name>
        <url-pattern>*.jsp</url-pattern>
        <url-pattern>*.jspx</url-pattern>
  </servlet-mapping>

在配置文件中,将后缀为.jsp/.jspx的都转化成.jsp,最终到 org.apache.jasper.servlet.JspServlet中执行

  1. 通过JspServlet将index.jsp生成index_jsp.java和index_jsp.class文件
  2. index_jsp.java继承HttpJspBase,HttpJspBase继承HttpServlet

JSP实际上也是Servlet

九大内置对象

  1. final javax.servlet.jsp.PageContext pageContext;

  2. javax.servlet.http.HttpSession session = null;

  3. final javax.servlet.ServletContext application;

  4. final javax.servlet.ServletConfig config;

  5. javax.servlet.jsp.JspWriter out = null;

  6. final java.lang.Object page = this;

  7. final javax.servlet.http.HttpServletRequest request;

  8. final javax.servlet.http.HttpServletResponse response;

  9. Exception

二、JSP语法

脚本程序

  <% 代码片段 %>

JSP声明

<%@ page contentType="text/html;charset=UTF-8" language="java" %>     

JSP表达式

<%= 表达式 %>
out.print(表达式);

注释

<%-- 这里可以填写 JSP 注释 --%>
<%-- 该部分注释在网页中不会被显示--%> 
<!--该注释会在网页中显示-->

在<% %>中写的Java代码,服从Java的注释

JSP指令

指令描述
<%@ page … %>定义页面的依赖属性,比如脚本语言、error页面、缓存需求等
<%@ include … %>包含其他文件
<%@ taglib … %>引入标签库的定义,可以是自定义标签
  1. Page指令
    errorPage 指定当JSP页面发生异常时需要转向的错误处理页面
    extends 指定servlet从哪一个类继承
    import 导入要使用的Java类
    isThreadSafe 指定对JSP页面的访问是否为线程安全

<%@page pageEncoding="utf-8" %>

<%@page contentType="text/html;charset=utf-8" 
errorPage="error500.html" extends="com.srzx.demo01.Test01Servlet" %>

<%@page import="com.srzx.entity.User" isThreadSafe="false"  %>

  1. Include指令
    JSP可以通过include指令来包含其他文件。被包含的文件可以是JSP文件、HTML文件或文本文件。包含的文件就好像是该JSP文件的一部分,会被同时编译执行。
    <%@include file="test04.jsp" %>
  2. Taglib指令
    JSP API允许用户自定义标签,一个自定义标签库就是自定义标签的集合。
    Taglib指令引入一个自定义标签集合的定义,包括库路径、自定义标签。
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

jstl的下载链接
链接:https://pan.baidu.com/s/1I-w5D9iGoDceXSbOaNJioQ
提取码:6d2l
复制这段内容后打开百度网盘手机App,操作更方便哦

三、JSP的生命周期

  1. 编译阶段:

    Servelet容器编译Servelet源文件,生成servelet类

     解析JSP文件。
     将JSP文件转为servlet。
     编译servlet。
    
  2. 初始化阶段:
    加载与JSP对应的Servelet类,创建其实例,并调用它的初始化方法

  3. 执行阶段:
    调用与JSP对应的Servelet实例的服务方法

  4. 销毁阶段:
    调用与JSP对应的Servelet实例的销毁方法,然后销毁Servelet实例

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值