首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JSP 热部署 源码解析

概述 我们知道在开发工程的时候jsp文件是即修改即生效的。...Tomcat jsp热部署的实现原理是每个JSP页面从上次访问到下次访问总是有默认几秒的缓存时间的,也就说并不是严格的即修改即生效,tocmat7默认是有4秒的缓存延迟的。...如果过了4秒缓存时间即失效,这个时候tomcat就会读取jsp的modified时间戳和work目录下编译好的class文件的modified的时间戳作对比。...同时创建一个新的JasperLoader来重新加载这个有jsp编译好的class文件。 热部署原理 一个class只能由classloader加载一次,如果再次加载将会导致类冲突。...判断上次请求的时候+4秒的时候,是否大于当前时间,也就是说,距离上次检查文件更新时间是否有4秒的时间,如果小于4秒则不进行检查文件是否更新,不重新加载编译jsp文件。 ?

4.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    jsp技术是什么?jsp技术的优点

    我们在接触网页的时候,可能就会接触到jsp技术,但是对于jsp技术是什么,相信有很多的人都是不太了解的,因为它听上去有些高深,所以很多人觉得太技术性了,但其实深入的了解后,它并没有我们想象中那么难,下面我们就将为大家介绍...,jsp技术的核心是可以在html的页面中插入Java代码,这样的方式,可以非常方便的和服务端进行交互。...二、jsp技术的优点 jsp技术应用还是比较广泛的,它可以一次编写并且可以在任何地方运行,除了系统之外,代码是完全不用修改的,在使用上是相当的方便。...系统的多平台对于jsp技术都是支持的,所以它可以在任意的环境中进行部署和扩展。在伸缩性上,jsp技术也是非常强大的,它仅仅只需要小小一个Jar文件,就可以运行Servlet/JSP了。...在上面我们已经向大家介绍了关于jsp技术是什么,以及关于jsp技术的优点,jsp技术在现在的社会中,应用的还是比较多的,大家可以多去了解了解关于jsp技术,它可以帮助我们制作动态网页,益处多多。

    4.1K30

    JSP---JavaBean的使用-jsp:useBean标签相关

    在JSP中访问JavaBean的语法: 1、声明JavaBean对像-必须使用完整类名: jsp:useBean id=“someBean” class=“package.SomeBean” scope...:page|request|session|application 需要说明的是:一般情况下,我们保留jsp:useBean/>的body部分为空,如果不为空,则只有初始化此Bean时执行,如: jsp...当声明了一个Bean并将它放到某个范畴之后,在同一个范围内再次使用jsp:useBean../>将不再创建。而是直接给你返回已经创建过的Bean的实例。此过程可以通过查看容器翻译的源代码得知。...(这个变量的类型不是基本数据类型时,jsp:setProperty>标记无法直接使用!)...-- 以下演示属性名与setter-getter方法比较特殊时的jsp:userBean用法 --> jsp:useBean id="person" class="cn.hncu.bean.Person

    2.1K10

    iOS系统源码思考:对象的引用计数存储在哪里?--从runtime源码得到的启示

    引言:这篇文章旨在从runtime源码中分析出 引用计数 值本身的保存位置,适合对底层原理有兴趣的朋友,或者面试造火箭的同学(比如百度的面试官非常喜欢问底层原理:好,我知道你说了深浅复制的区别一大堆,...如果我让你实现引用计数的功能,你有思路吗?)。因而本文并 不适用于 专注业务层快速开发的同学,因为这里将贴有大量的源码。没有耐心的同学可以先收藏暂时回避一下,日后造火箭造飞机的时候再来。...指望你能造火箭造飞机的面试官可不这么想了,比如问你一句,一个对象的 引用计数本身 保存在哪里??不关注底层的面试者,这时候可能会懵逼。很多介绍内存管理的文章对此也含糊不清,例如: ?...研究方式 这篇文章不同于其它文章通过 clang编译 一个类文件以查看它的实现原理(笔者曾用clang编译分析Block的原理,传送门),而是直接通过下载runtime的源码来查看分析。...简单的说,它是这样的一个联合体,包含了bits (是一个 uintptr_t 类型的值,作为isa初始化列表中必初始化的值,可以用来获取isa结构体)和 cls (该变量会指向对象所属的类的结构,在 64

    6K20

    《一起读 kubernetes 源码》pause 你在哪里?

    心路历程 作为第一章节的最后一小结,将在这里说明另一个源码阅读要注意的方式方法:先原理,再源码。...所以,对于 pause 与之前不同的是,我们需要先去弄懂它的原理,了解了大概之后再回去看源码。...源码分析 当你想要你 k8s 的源码中寻找 pause 的时候,你就会发现,你能找到一些蛛丝马迹,但是毫无头绪,一开始我也是的,我在源码中搜索了所有有关 pause 的内容,发现并没有看到真正创建这个容器的地方...此时源码已经追不下去了。这也是读源码最容易遇到的一个问题,由于源码本身会依赖外部的一些实现,导致阅读源码本身并不能理解全部,此时也是原理发挥作用的时候了。...不要怕,让我们去 containerd 的源码里面看看。

    25010

    JSP第三篇【JavaBean的介绍、JSP的行为--JavaBean】

    ---- JSP行为--JavaBean JSP技术提供了三个关于JavaBean组件的动作元素,即JSP行为(标签),它们分别为: jsp:useBean【在JSP页面中查找javaBean对象或者实例化...javaBean对象】 jsp:setProperty【设置javaBean的属性】 jsp:getProperty【获取javaBean的属性】 jsp:useBean jsp:useBean>标签用于在指定的域范围内查找指定名称的...语法: jsp:useBean id="实例化对象的名称" class="类的全名" scope="保存范围"/> 如果JSP不支持jsp:useBean>这个行为,我们要使用Person类是这样使用的...表单提交过来的数据都是字符串,在我们没有用jsp:setProperty前,我们存储设置int类型或其他非字符串类型的数据是需要强转的!...,我们看编译后的JSP就明白了。 ? ---- jsp:getProperty 语法: 该jsp行为十分简单,我们来使用一下就知道了。

    1.4K60

    JSP的include指令

    大家好,又见面了,我是你们的朋友全栈君。   在JSP中,可以使用include指令来包含其他jsp文件。例如,一个网站中,多个网页具有很大部分是相同元素时,可以使用include指令来完成。...在file属性中指定要包含的jsp文件的路径,推荐使用相对路径。...在eclipse中,按住Ctrl键,并点击file属性指定的路径能够打开相对应的jsp文件,说明路径正确。...将web项目部署到Tomcat服务器并启动服务器,到work目录中找到jsp文件翻译成的java文件。...查看out.write()代码部分,发现两个其中有html标签有重复的。因此,我们可以在header.jsp中去掉部分重复的标签,这样include.jsp也能正常的翻译成servlet程序。

    1.2K10

    JSP引擎、JSP容器、Web服务器的区别

    JSP引擎与JSP容器指的都是同一样的东西,他们都是用来同一管理和运行Web引用程序的“软件”。...常见的JSP引擎有Tomcat、JRun、Resin 广义上来说,JSP引擎是用来管理和运行Web应用程序的软件,而安装了JSP引擎的计算机就是Web服务器。...,同时也能够为动态网页提供服务支持(因为它包含JSP容器和Servlet容器也可以称之为JSP引擎),尽管Tomcat的速度和功能没有Web服务器快和多,但是Tomcat也逐渐为支持静态的内容不断扩大,...大多数的Web服务器都是由C语言等,利用了相应平台的特征,因此用纯Java编写的Tomcat速度上是肯定会稍稍逊色的 、PS: JRun: JRun是一个JSP引擎,与Tomca一样用来管理和运行Web...应用程序(收费的) Resin: Resin是一个JSP引擎,用来管理和运行一个Web程序,是CAUCHO公司开发的Java服务器端的软件,Resin运行JSP的速度非常的快速而且是不收费的!!

    2.1K30

    初识JSP:JSP的注释、脚本、声明、表达式

    1.JSP的注释 在HTML当中,如果使用传统的注释我们可以在客户端,也就是网页上右键查看源代码里面看得到该注释,但是JSP注释无法在客户端里看到。源码里面会只会看到JSP注释的地方空出来。...使用方法: jsp注释,客户端不可见--%> Intellji IEDA的JSP注释快捷键是:Ctrl+/ 2.JSP的脚本 JSP脚本可以在HTML代码中嵌入Java代码。...使用方法: <% //这是一段可以写java代码的JSP脚本 //注意,这里面不能用jsp的注释方法 out.println("大家好,这里是Java语言输出的一段话"); %>...3.JSP的声明 既然用到了JSP脚本来写Java代码,那么各种变量和方法必不可少。...a = 10; out.println(a); out.println(count(10,20)); %> 4.JSP表达式 有些时候,JSP声明的变量需要嵌入到网页的某一部分显示,那么就可以用的

    1.1K00

    JSP中的Cookie

    如何创建Cookie 先引包: import="javax.servlet.http.Cookie" JSP是使用如下的语法格式来创建cookie的: Cookie cookie_name =new...Cookie("username","SMN"); cookie.setMaxAge(10); //存活期为10秒 response.addCookie(username_Cookie);  解释:JSP...使用getDomain() 方法可以指示浏览器把Cookie返回给同 一域内的其他服务器,而通常Cookie只返回给与发送它的服务器名字完全相同的服务器。...读取客户端的Cookie JSP将调用request.getCookies()从客户端读入Cookie,getCookies()方法返回一个HTTP请求头中的内容对应的Cookie对象数组。...你只需要用循环访问该数组的各个元素,调用getName方法检查各个Cookie的名字,直至找到目标Cookie,然后对该Cookie调用getValue方法取得与指定名字关联的值。

    2.3K20

    java基于ssm,jsp鞋城源码卖鞋服装男鞋商城女鞋商城项目源码

    ssm开发的网上鞋城系统,主要有商品分类,列表,详情,加入购物车,订单,收货地址等功能,单商家登录后台可以发布商品,上下架商品,发货退款等管理订单。...ed0f04fbb713154db5cc611225d92156运行环境Jkd7-8,tomcat7-8,mysql5.5技术Ssm+ajax+bootscrap+css+jq+js功能:首页,搜索商品,详情页,可选择尺寸,衣服颜色,根据不同规格显示不同的商品价格...,注册,修改密码,收货地址管理,购物车,确认支付订单修改收货地址,添加备注,待支付订单,待发货订单,待收货订单,待评价低订单,已完成订单,申请退款订单,已退款订单,取消订单,删除订单,查看评价信息,我的购物车...管理员: 商品分类管理(排序):添加、编辑、删除、根据分类名称查询,分页;商品标签管理:添加、编辑、删除、根据标签名称查询,分页;发布商品:可输入商品标题,价格,不同规格设置不同的价格,上传商品主图(剪裁图片

    2.3K10

    JSP 编译原理:JSP 是 Servlet?如何用 Eclipse 查看 JSP 编译生成的 Servlet 源文件?

    JSP 编译输出文件 四、JSP 编译输出 Servlet 的论证 五、访问 JSP 文件的流程 总结 前言 相信大家都了解,JSP 页面在请求的时候会先被 Tomcat 编译为 Servlet...我们使用 IDE 打开 JSP 页面编译生成的 .java 文件(.java 文件的可读性与.class 文件强得多),一行一行与上面我们的 JSP 页面对比,是不是一样?...这也就是当初为什么出现 JSP 的原因,使用 JSP 比 Java 节省了大量的代码。 同时论证了 JSP 文件编译后首先生成的是 Servlet。...是否是第一次访问 JSP 文件的流程如下图所示: 但是请注意:如果你的 JSP 文件进行了修改,再次点击保存发布会重新编译,又会重新走编译的流程。...还有建议大家养成一个好习惯:看源码!源码是一切!

    2.7K20
    领券