JavaScript(jsp)详解

jsp(Java Server Pages)jsp全称Java Server Pages,是一种动态网页开发技术.html文件是静态页面.jsp文件是动态页面jsp页面允许我们在html代码中嵌入java代码,这样就可以在html中使用java代码来完成功能了。so jsp =html+java运行浏览器可以直接运行html页面但是不可以直接运行jsp页面,jsp也是需要在web容器中运行(tomcat等),因为它本质也是一个Servlet其中最核心的是有JSP的引擎(jasper.ja
摘要由CSDN通过智能技术生成

jsp(Java Server Pages)

jsp全称Java Server Pages,是一种动态网页开发技术

.html文件是静态页面

.jsp文件是动态页面

jsp页面允许我们在html代码中嵌入java代码,这样就可以在html中使用java代码来完成功能了。

so jsp =html+java

运行

浏览器可以直接运行html页面但是不可以直接运行jsp页面,jsp也是需要在web容器中运行(tomcat等),因为它本质也是一个Servlet

其中最核心的是有JSP的引擎(jasper.jar),它可以将jsp页面翻译成java程序,并编译成class文件,然后在运行。

所以jsp是运行在服务器端的,运行完之后,把动态生成的html页面再使用io流写回给浏览器,浏览器接收并且解析后再呈现出来效果。

关系

因为JSP页面第一次被访问时,会被tomcat服务器编译成一个java类,这个java类默认继承HttpJspBase类,而HttpJspBase类是HttpServlet的子类,所以JSP其实就是一个servlet程序,所以得和servlet一样运行于web容器中;

jsp页面被tomcat服务器编译成的java文件及其class文件,保存在tomcat服务器里面的work目录中,在这里的代码中,我们还可以看见它是如何使用io流把生成的html页面代码一行一行写回给浏览器的。

/*

\* Generated by the Jasper component of Apache Tomcat 

\* Version: Apache Tomcat/8.5.58 

\* Generated at: 2020-10-07 01:50:21 UTC 

\* Note: The last modified time of this file was set to 

\* the last modified time of the source file after 

\* generation to assist with modification tracking. 

*/ 

package org.apache.jsp; 

import javax.servlet.*; 

import javax.servlet.http.*; 

import javax.servlet.jsp.*; 

public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase 

implements org.apache.jasper.runtime.JspSourceDependent, 

org.apache.jasper.runtime.JspSourceImports {
    

private static final javax.servlet.jsp.JspFactory _jspxFactory = 

javax.servlet.jsp.JspFactory.getDefaultFactory(); 

private static java.util.Map<java.lang.String,java.lang.Long> 

_jspx_dependants; 

private static final java.util.Set<java.lang.String> _jspx_imports_packages; 

private static final java.util.Set<java.lang.String> _jspx_imports_classes; 

static {
    

_jspx_imports_packages = new java.util.HashSet<>(); 

_jspx_imports_packages.add("javax.servlet"); 

_jspx_imports_packages.add("javax.servlet.http"); 

_jspx_imports_packages.add("javax.servlet.jsp"); 

_jspx_imports_classes = null; 

}

private volatile javax.el.ExpressionFactory _el_expressionfactory; 

private volatile org.apache.
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值