java 自动编译_Tomcat是否自动编译Java Servlet?

小编典典

对我来说,您混合了两种主要技术-

tomcat作为Web容器,eclipse作为您的IDE。它们的集成使您感到困惑。现在让我们离开JSP并只谈论servlet,因为它会使您更加困惑

Tomcat无法使用源文件(* .java)。例如,您 必须 使用javac编译应用程序,并创建一个名为WAR的文件-网络归档-

一个zip文件,其中将包含您的已编译类并遵守tomcat可以理解的一些EE标准(也可以使用文件夹而不是zip,但请放下它此外,它与该说明无关)。

除其他外,这种战争(一旦正确编译)将包含您已编译的Servlet类HelloWorld.class。

一旦tomcat启动并在部署文件夹中识别出您的war文件,它将打开它并在运行时加载。没有编译,只有运行时加载。

现在人们在这里谈论JSP。实际上,JSP在技术上等同于servlet,但类似于HTML。您将文件扩展名为.jsp并构建您的WAR。Java编译器无法读取JSP文件,因此您应以某种方式将它们放入war文件中(通常是通过构建工具/

IDE为您完成)。最重要的是,您拥有在战争中创建的JSP文件。现在,您将战争付诸于Tomcat,它可以像以前一样识别并加载。此时,它仍然对您的JSP无效。

因此,部署了您的战争,启动了tomcat并从您的浏览器转到“ http:// localhost:8080 /

myfirstjsp.jsp ”。这时(第一次调用JSP)发生了很多事情:

Tomcat获取浏览器的HTTP请求

Tomcat意识到应该处理JSP文件

Tomcat解析您的JSP文件

Tomcat在内部将其编译为您不知道的某些类文件(其内部存储在Tomcat中),

Tomcat在运行时加载此文件,并将其视为已编译的Java类。

下次调用JSP时,它将已经编译。

这里的最后一个问题是Eclipse如何与所有这些故事联系起来:)实际上,Eclipse与tomcat集成在一起,因此所有创建和部署战争的工作都是透明的。这就是为什么您在Eclipse上按下“播放”键,然后它编译您的项目,创建战争,确保Tomcat意识到这场战争(配置与部署相关的内容),启动Tomcat和瞧!-您的应用程序正在运行。

了解在什么级别发生什么很重要

希望这对

马克有帮助

2020-06-16

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/506421.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

苹果自带相册打马赛克_如果你用苹果手机!学会这3个技巧,就能让手机变得更加好用...

如果你用苹果手机!这3个技巧一定要学会,能让手机变得更好用现在手机中的黑科技功能越来越多,就拿iPhone手机来说,很多朋友选择这款手机不仅是因为拥有非常流畅的系统,手机中自带的黑科技功能也是大家选择它的原因。今天…

java matcher replace_java.util.regex.Matcher.replaceFirst(String replacement)方法

java.util.regex.Matcher.replaceFirst(String replacement)方法用替换给定替换字符串的模式替换输入序列的第一个子序列。声明以下是java.util.regex.Matcher.replaceFirst(String replacement)方法的声明。public String replaceFirst(String replacement)参数replacement - …

给与 x 距离不超过 d 的点权值 a_一年级不上网课,妈妈陪孩子一起来完成三单元各课练习及单元卷吧...

部编一年级下册第5课小公鸡和小鸭子课后练习题一、将下列字的音节补充完整。k____ x____ zh____ 块 行 捉 二、选择加点字的正确读音,画“√”。忽然(rn rnɡ)  大喊(hǎn hǎnɡ)上身(shēn sēn)  死去(sǐ shǐ)三、看拼音,写字词。1小明说(&am…

java games_Java Me Games

在GWT的文档里说,大致上CSS的命名规则是这样的"[project]-[widget],比如gwt-Button,你可以在CSS里定义如下:.gwt-Button{font-size:150%;}但是这样的说明是不充分的,所以这里有必要把他真正的样式表来列一下&…

java timestamp 转换_Java:String和Date、Timestamp之间的转换

一、String与Date(java.util.Date)互转1.1 String -> DateJava代码 String dateStr "2010/05/04 12:34:23";Date date new Date();//注意format的格式要与日期String的格式相匹配DateFormat sdf new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");try {…

bugku 杂项 就五层你能解开吗_9.65米解放龙V杂项危险废物厢式运输车62

亲爱的,点击上方蓝字关注我吧9类危险废物厢式运输车解放龙V2.0半高顶半浮驾驶室底盘参数:龙V2.0半高顶半浮驾驶室、锡柴225马力,6.6排量,164千瓦,百公里耗油30.3L、陕齿8JS85E、435升级冲焊桥(速比4.444)、275/80R22.5-18PR层级、…

python矩阵运算与线形代数_[译] 线性代数:矩阵基本运算

线性代数:矩阵基本运算在本文中,我们将介绍矩阵的大部分基本运算,依次是矩阵的加减法、矩阵的标量乘法、矩阵与矩阵的乘法、求转置矩阵,以及深入了解矩阵的行列式运算。本文将不会涉及逆矩阵、矩阵的秩等概念,将来再探…

torch tensor去掉1维_南昌清污机新价格表1_海腾水工

南昌清污机新价格表1,应用中,应停止机械零件,停止防锈处理,定期在停水面涂抹黄油,开关发生某些异常,立即暂停,及时检查。 开闭时,请注意活塞的上下限位置,以免挡板和卷扬机损坏。 起…

java 堆 是用_Java8元空间和堆使用

运行jmap -histo PID以查看哪些对象消耗堆空间.当我运行你的例子,我看到堆充满了Javassist辅助对象:num #instances #bytes class name----------------------------------------------1: 592309 312739152 [Ljavassist.bytecode.ConstInfo;2: 6515673 208501536 ja…

fx系列微型可编程控制器 通信_电气人,三菱Q系列和FX PLC系列之间的区别你都知道吗?...

三菱Q系列和FX系列作为三菱旗下的两大PLC系列,在日常的作业中小伙伴们都会接触到,因此本文将三菱可编程控制器中使用的内置的输入输出继电器、辅助继电器、状态、计数器、数据寄存器等各种软元件的作用和功能进行了说明。Q系列FX系列输入继电器 X输入继电…

无符号有符号乘法_【编译笔记】变量除以常量的优化(一)——无符号除法

注:本文中的算法来自于 Division by Invariant Integers using Multiplication [1]。众所周知,编译器可以把变量除以常量优化为乘法和移位。 例如:Uint32 f(Uint32 a) { return a / 3; }会生成下面这样的汇编(x86_64)&…

left join 效率_人力资源HR的人才测评工具,极大提高招聘效率

作为一个HR小白,打交道最多的就是简历,领导谈的最多的就是提高工作效率,其实这个概念对于我来说还是挺抽象的,经过向前辈的取经,人力资源如何提高效率,做了个小小的总结。首先我们要明白我们的难点有哪些&a…

windows media player 9_openmeetings(开源视频会议系统)的详细安装步骤 (windows版)

一、开源视频会议系统openmeetings的简介:OpenMeetings是一个多语言可定制的视频会议和协作系统。它支持音频、视频,能让你查看每个与会者的桌面。OpenMeetings还包含一个白板,通过白板可以导入各种格式的图片和涂鸦。它是基于OpenLaszlo’s的…

Java实例化后自动执行_Java的实例化顺序(程序执行顺序)

加载/执行顺序:牢记一点:静态和非静态分开处理使用到静态加载时,静态又分为: 静态变量, 静态代码块, 其中加载顺序是按照类中书写的先后顺序加载的非静态加载顺序: 按照非静态书写顺序加载/执行…

为什么java中floatda正确_为什么cast to float在java中产生正确的结果?

文档没有特别好地解释,但Double.toString(double)基本上在它产生的输出中执行一些舍入. Double.toString算法在整个Java SE中使用,包括例如System.out的PrintStream.println(double).文档说明了这一点:How many digits must be printed for the fractional part of …

war包怎么解压_渣渣辉表情包下载-渣渣辉抖音表情包动态图下载

详情介绍渣渣辉表情包怎么制作?渣渣辉表情包gif在线生成工具应用安装资源推荐给大家,这是一款最近抖音上相当火爆的趣味聊天必备神器。这里各种各样的动态表情包应有尽有,你喜欢的表情包这里都有。感兴趣的小伙伴赶紧下载体验吧!关…

不足补0 java_Java Android 开发数字不足位数前面补0

import java.text.decimalformat;public void changecolor(view view) {decimalformat decimalformat new decimalformat("000");//获取随机数对象,产生三个随机数值(rgb值)random x new random();int red x.nextint(256);string sred decimalformat.…

python数据分析_使用Python进行数据分析

麦金尼编写的《使用Python进行数据分析》是最经典的数据分析教材,本专栏主要应用视频讲解的方式,讲授本书核心思想,并提供本教材的所有代码和代码点评。注意:视频网址必须用电脑台式机打开!手机访问不到视频。注意&…

java.policy无法修改_如何配置Policy文件进行Java安全策略的设置

中国人最喜欢访问的网站只要注册ofo就送你10块钱,还等什么,快来注册吧Java语言具有完善的安全框架,从编程语言、编译器、解释程序到Java虚拟机,都能确保Java系统不被恶意的代码或敌对的编译器暗中破坏,它们能够保证Jav…

百度原创度在线检测_资深自媒体作者:做自媒体没有这款“原创度检测”软件是不行的...

目前市面上除了今日头条自媒体平台外,好友好多好多其它的自媒体平台,比如百度的百家号、360的快船号、腾讯的企鹅号等等,各种各样的自媒体平台,如此多的自媒体平台大家每天写作的资源和话题也就那么多,免不了有些人就会…