在JSP编译的时候,服务器内部做了什么?

OpenClaw + Antigravity + 飞书完整部署教程 在 Linux 服务器上部署 OpenClaw,使用 Antigravity 本地代理 AI 模型,并接入飞书实现 24 小时在线 AI 助手。 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> 在JSP第一次获得请求时,不管请求来自于客户端浏览器还是服务器上的servlet, JSP文件将被JSP引擎(JSP engine)转换成为一个servlet。而这个引擎本身也是一个servlet,在JSWDK,它就是 JspServlet。 在编译时候如果发现jsp文件有任何语法错误,转换过程将中断,并向客户端发出出错信息;而如果编译成功了,则所转换产生的servlet代码被编译,然后该servlet被JSP引擎加载到内存中。此时JSP引擎还请求了jspInit()方法的执行,并对此servlet做初始化。jspInit()方法在servlet的生命周期中只被请求一次。然后jspService()方法被调用来处理客户端的请求和回复操作。对于所有的随后而来的对该JSP文件的请求,服务器将检查该.jsp文件自最后一次被存取后是否经过修改。如果没有修改则请求将交给还在内存中的servlet的jspService()方法以一种同时发生的方式加以处理。注意,由于 servlet始终驻于内存,所以响应是非常快的。 如果.jsp文件被修改了,服务器将自动地对文件重新编译,并将结果取代内存中的servlet,并继续上述处理过程。 虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。 此外,如果在任何时候如果由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet从内存中移去。当这种情况发生时jspDestroy()方法首先被调用, 然后servlet实例便被标记加入“垃圾收集”处理。 补充: jsp编译原理 JSP文件的Scriptlets在编译后将被包含于该JSP servlet的service()方法。当JSP引擎处理客户端请求时,JSP Scriptlets在被请求的时候被执行。如果scriptlet产生输出,输出将在out (JSPWriter)对象中进行缓存然后最终发送到客户端。 .jsp由一个Servlet"解释"执行 这个Servlet就是/servlet/org.git.jsp.JspServlet(假如你把它放在servlet这个区域里) 第一次访问jsp文件的时候这个servlet会把.jsp编译成另一个servlet, 然后以后每次访问这个jsp的时候就直接调用那个servlet了. 相关内容: jsp预编译器: Jakarata Tomcat3.1 JSP服务器 (http://jakarta.apache.org)包含了一个 JSP编译器(JSPC),可以进行预编译,既可以定义一个web应用的文件目录,也可以指定某个特定jsp文件来进行编译。 另外,oracle也有jspc。
一个 ABAP 工具,能打印系统里某个用户对 BSP 应用的浏览历史记录 只要一个用户在 SAP ABAP 系统里浏览过 BSP 页面,会留下浏览历史记录。本工具会解析出这些记录,打印出该用户浏览的历史事件,和浏览过的页面名称。 阅读详情

相关推荐

PCB布线避坑指南:晶振布局的5个致命错误(附正确示例图)

本文深入解析PCB布线中晶振布局的5个致命错误,包括底层布线、电容布局、地平面处理等关键问题,并提供实战解决方案。通过真实案例和量化数据,帮助硬件开发者避免常见陷阱,提升电路稳定性和性能。特别针对晶振这一高敏感元件,给出布线参数黄金法则和三维避让原则。

weixin_29215391的博客 428

《JSP应用开发详解》学习:JSP的工作原理

浏览器请求服务器内的JSP文件时,服务器的Servlet容器会在第一次调用这个JSP文件时进行编译。编译完成后,该JSP实际是一个Servlet类,该Servlet产生对应的输出结果,把输出结果发送给Servlet容器,Servlet容器把这些结果以HTML文件形式发送给浏览器。 应注意,Servlet容器会在第一次调用JSP时进行编译,之后这个JSP会存在在内存中,之后再次调用无需编译(除非JS...

weixin_43859070的博客 361

【后端】主流后端语言:JAVA、C、C++、GO、PYTHON

软件开发领域,语言本身在各自领域都有适用场景,有许多流行的编程语言可供选择,每种语言都有其独特的特点和适用场景。

wnm23的专栏 1万+

JSP基础测试题

1、为了标识一个HTML文件,应该使用标记( A ) A、html B、body C、head D、table 2、form表单中表示提交数据的目的地址的属性是(C) A、name B、id C、action D、method 3、关于post提交方式说法错误的是(B) A、安全性较好 B、不能传输大量的数据 C、地址栏看不到提交的数据 D、超链接不是post提交方式 4、表单的提交方式有(...

每一次跌倒都是为了华丽的站起来。 3623

电磁仿真新手必看:如何用CST Studio Suite 2023完成第一个PCB辐射仿真?

本文详细解析了如何使用CST Studio Suite 2023进行PCB辐射仿真,适合电磁仿真新手快速上手。从工程准备、求解器配置到端口设置和后处理技巧,全面覆盖三维全波电磁场仿真软件的核心操作步骤,帮助工程师精准预测和解决PCB电磁辐射问题。

y7z8a9的博客 734

太美了!现代女主jk海军风穿搭四视图

哪个女孩子初高中的时候不买几套JK衣服啊,穿上完全是青春女孩。那还愣着干啥,不得也给你的漫剧女主也穿上!直接就是分享三套JK穿搭,红棕双麻花辫配经典水手服,是那种乖乖巧巧的元气学妹;粉色羊毛卷双马尾,搭配蝴蝶结和小挎包甜度直接拉满;还有灰棕色侧麻花辫,浅蓝上衣配黑色百褶裙,温柔里又带点小酷。下面把这三套角色的完整提示词分享出来,喜欢哪套就拿去参考,改改发型和配色,还能继续解锁新角色!

欢迎来到鸾姝淡月博客,专为程序员和编程爱好者打造的技术博客。我们分享编程语言趋势、开发工具、编程哲学、职业发展等,助你掌握新技术,优化技能,激发编程热情。 59

服务器显示jsp未编译,java - 无法为JSP编译类:服务器遇到内部错误,阻止其满足此请求 - 堆栈内存溢出...

我的JSP有问题(我正在使用Tomcat),我想将浏览器窗口中的标题设置为Config类中的字符串,您可以在下面看到,问题是我遇到了错误。 我已经在互联网上搜索了这个问题,但对我来说没有任何用。索引文件:Config cfg = new Config();%>$END$Config类:包测试;public class Config {private String siteTitle = "...

weixin_28475533的博客 342

STM32开发 -- GPIO详解

之前有简单讲过GPIO工作模式和寄存器,还是有点没搞明白。这次需要全方位的看一下了。 一、数据手册 1、STM32F105RC引脚说明 可知:STM32F105RC 一共有4组IO口 一共16X3+3=51个IO GPIOA0~A15 GPIOB0~B15 GPIOC0~C15 GPIOD0~D2 2、程序定义 GPIO端口号 STM32F1...

不积跬步,无以至千里 5万+

jsp:500 - 内部服务器错误 org.apache.jasper.JasperException: 无法为JSP编译类异常解决

我用的时IDEA的tomcat7插件,把jdk修改为corretto1.8,修改后可以运行了(原本是18)红框里两个1.8不知道为什么不行,直有这个带cor的1.8可行。查了很多都说时tomcat和jdk有冲突,但是在项目内修改tomcat配置无效,需要在新建项目时修改jdk。运行jsp时出现下图错误,报错行是System.out.println。tomcat8也成功运行了!

qq_55015207的博客 3264

SAP Parallel Accounting(平行分类账业务)配置及操作手册(超详细的说明和测试)

非常详细的介绍了SAP 的平行分类账配置以及测试效果哦

nopicture的博客 4346

Vue3 - 详细实现虚拟列表前端虚拟滚动列表解决方案,vue3长列表优化之虚拟列表,解决列表动态高度不固定高度及图片视频图文异步请求加载问题,虚拟列表DOM大量数据同时加载渲染卡顿太慢及下滑列表闪烁

vue3,vue3虚拟列表,用vue3实现一个虚拟列表,长列表高度不一致如何实现虚拟滚动加载列表,虚拟列表有图片视频,图文列表,上万条数据同时渲染解决,长列表dom渲染太卡,列表滚动条加载超多数据,瀑布流,在Vue3中如何实现列表的虚拟滚动,虚拟列表滑动白屏闪烁闪一下,虚拟列表每个项的高度不确定,可动态改变高度,vue3虚拟滚动列表,页面数据太多加载很慢怎么办,vue3实现不定高的虚拟列表,定高和不定高,虚拟列表非固定高度,vue3长列表优化之虚拟列表实现,vue3虚拟列表高度不固定,用vue3实现一个虚拟

🏆 前端领域优质创作者 1万+

jsp无法编译java_org.apache.jasper.JasperException:无法为JSP编译类:

在使用meven时遇到的问题类型异常报告信息description服务器遇到内部错误(),导致无法完成此请求。例外org.apache.jasper.JasperException:无法为JSP编译类:生成的java文件中的行:1处发生错误无法解析java.io.ObjectInputStream类型。它是从所需的.class文件间接引用的生成的java文件中的行:1处发生错误无法解析java.l...

weixin_26976635的博客 3459

SEGGER Embedded Studio初体验

先楫HPM5E00EVK开发环境搭建

hywing's blog 1109

JSP数据交互(二)

session与cookie的对比 session     在服务器端保存用户信息  session中保存的是Object类型 随会话的结束而将其存储的数据销毁 保存重要的信息 cookie 在客户端保存重要的信息 cookie保存的是String类型   cookie可以长期保存在客户端 保存不重要的用户信息     JSP的编译器指引与指令组件 编译器指示  声明

chi15733896278的博客 763

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Unable to compile class for JSP

[code="Exception"]type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.Jasper...

sjeveryday的专栏 139

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

jsp数据交互

session与cookie的对比session 在服务器端保存用户信息 session中保存的是Object类型随会话的结束而将其存储的数据销毁保存重要的信息cookie 在客户端保存重要的信息cookie保存的是String类型 cookie可以长期保存在客户端保存不重要的用户信息 JSP的编译器指引与指令组件编译器指示 声明 表达式 程序代码段/小型指令 注释 内部对象说明request 客

阿薇哥哥 310

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

jsp学习(1)jsp请求过程和生命周期

一、服务器处理jsp请求的过程: 以下步骤表明了 Web 服务器是如何使用JSP来创建网页的: 1.浏览器发送一个 HTTP 请求给服务器。 2.Web 服务器识别出这是一个对 JSP 网页的请求,并且将该请求传递给 JSP 引擎。通过使用 URL或者 .jsp 文件来完成。 3.JSP 引擎从磁盘中载入 JSP 文件,然后将它们转化为 Servlet。这种转化只是简单地将所有模板文本改用...

weixin_30894583的博客 281

mysql登录1002无标题_一个jsp+javabean+mysql的登陆问题

typeExceptionreportmessagedescriptionTheserverencounteredaninternalerror()thatpreventeditfromfulfillingthisrequest.exceptionorg.apache.jasper.JasperException:/3.jsp(15,5)...type Exception reportmessag...

weixin_39929153的博客 88

JSP原理

8.2 jsp原理 思路 jsp怎么执行的? 服务器内部工作 代码层面没有问题 页面转变成java程序; 服务器 jsp最终也会被转化为java类 HttpJsBase 服务中存在web容器,jsp页面;转换,将jsp页面转换为java文件。 再经过编译,得到.class文件; jsp界面中,只要是java代码,就会原封不动输出;如果是html,会被转换为。。。格式。 ...

qq_42938698的博客 218

jsp无法编译java_JSP文件过大无法编译

HTTP Status 500– Internal Server ErrorType Exception ReportMessage Unable to compile classforJSP:Description The server encountered an unexpected condition that prevented it from fulfilling the reques...

weixin_33140809的博客 302

浅谈JSP与Servlet

目录JSP的根本还是ServletJSP详解JSP运行原理 JSP的根本还是Servlet 在调用JSP文件时,会进行如下四步: 1. Http服务器将JSP编辑并生成一个Servlet接口实现类(.java程序) 2. Http服务器编译Servlet接口实现类,生成class文件 3. Http服务器创建此class的实例对象 4. Http服务通过此实例对象,调用其_jspService方法实现功能 JSP详解 先写一个jsp文件,名为one.jsp <%@ page contentType=

CCjoffrey的博客 236

jsp的作用及原理

作用: 1,代替响应对象将结果集写入响应体; 2,既能写Java代码,又能写HTML <!--执行Java命令--> <% int a = 10; int b = 10; %> <!--结果集写入响应体--> <%= a+b%> <html> <p style="color: chartreuse ; font-size: 100px"><%= a+b%></p> </html&

qq_37278134的博客 1509

JSP原理剖析

什么是JSP javaServlet Pages;java服务器端页面,也和Servlet一样,用于动态web技术! 最大的特点:写jsp就像再写HTML 区别: HTML只给用户提供静态的数据 JSP页面中可以嵌入java代码,为用户提供动态数据 Jsp原理 思路:jsp到底怎么执行的! 代码层面没有任何问题 服务器内部工作 tomcat中有一个work目录 IDEA中使用Tomcat的会在IDE的tomcat中生产一个work目录

BubblesMusic的博客 245

jsp原理解析

什么是jsp? java server page 写jsp就像在写HTML HTML只提供静态数据 jsp可以嵌入就java代码,为用户提供动态数据 jsp执行 服务器内部工作 tomcat有一个目录 页面转为java 浏览器向服务器发送请求,在访问serverlet jsp本质上是serverlet 初始化 销毁 jspservice 判断请求 内置对象 页面上下文 session application config out page request response 输出页面前增加的代码 设置响应的页

qq_41995845的博客 86
上一篇: 微软发布VM安全补丁
下一篇: 简单对象访问协议(SOAP)初级指南
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值