设为首页 收藏本站
查看: 556|回复: 0

[经验分享] web应用程序的布署:Tomcat详解

[复制链接]

尚未签到

发表于 2017-1-29 08:03:06 | 显示全部楼层 |阅读模式
1.web应用程序的结构
Web 应用程序是 servlet、JSP 页面、静态页面、类和其他资源的集合,它们可以用标准方式打包,并运行在来自多个供应商的多个容器。Web 应用程序存在于结构化层次结构的目录中,该层次结构是由 Java Servlet 规范定义的。Web 应用程序的根目录包含直接存储或存储在子文件夹中的所有公共资源,比如图像、HTML 页面等。构成:Web应用由Web组件(一组Java类库)、html文件,静态资源文件(如图像)、帮助类和库组成。
webApp配置:在Web应用被部署以后,就可以对其行为的某些方面进行配置。配置信息通过Web应用部署描述文件来维护,该文件是一种XML格式的文本文件。部署描述文件必须遵从Java Servlet规范中描述的模式。
Web应用归档文件 :如果要发布一个Web应用,你可以将其使用jar命令打包到一个Web应用归档文件(Web application archive,WAR)中,WAR与JAR类似,都是用作Java类库的包。一个war文件应完整包括了一个WebApp必须的相关类库和资源文件(也就是具有 .war 扩展名而不是 .jar 的 JAR 文件)文件。当容器看到扩展名 .war 时,它会认识到它是一个 Web 应用程序存档文件,解压缩该文件,并自动部署应用程序。
结构:
   yourWebApp\
          ...html/jsp/资源文件
          WEB-INF\web.xml ,Web应用的部署描述文件,必须!
          lib\ 相关jar类库,标签库
          classes\ 相关class文件
每个web应用必须存在着一个特殊目录,称为 WEB-INF,它包含对于客户机不能公共访问的所有文件。WEB-INF 目录像下面那样进行组织:
·/WEB-INF/web.xml 部署描述符。
·存放 servlet 和工具类的 /WEB-INF/classes/ 目录。容器使这些类对于 Web 应用程序类加载器可用。
·存放 JAR 文件的 /WEB-INF/lib/ 目录。这些文件包含 servlet、bean 和其他工具类,它们对于 Web 应用程序是有用的。容器把来自该目录的所有 JAR 文件,添加到 Web 应用程序的类路径中。
2.tomcat介绍
Tomcat 是一个符合javaEE标准的Servlet/Jsp 容器 . 不但支持运行 Servlet 和 Jsp , 还具备作为商业 Java Web 应用容器的特性 , 如 Tomcat 管理和控制平台 , 安全域管理等。是著名的开源组织Apache下面的一个子项目。是Java开源界应用最优秀最广泛的产品之一!
Web服务两种类别:
    面向表示的:注重页面表现内容,一般体现为HTML文件,如用网页三剑客编辑,用IIS,Apache发布。
    面向服务的:与API调用类似,是一种细粒度服务,一般为面向表示的服务 来调用。Java中的Servlet、jsp技术。可用Tomcat,Jboss等发布。
Servlets:是Java编程语言中用于动态地处理请求和建立响应的一种类,纯Java代码,安全符合Java语法和编程规则。
JSP:基于文本的脚本语言,允许直接在html文档中加入Java代码,除符合Java编程规则之外,还有jsp规范的指令和标记语法。

       它们各有千秋。Servlets最适合于面向服务的Web应用,同时还擅长于管理面向表示的Web服务的控制功能,例如发送请求和处理非原文的数据。而JSP页面则更适合于产生基于文本的标记,例如:HTML、SVG、WML以及XML等。
3.WEB应用程序与本机应用程序区别
一个Web应用就是一组程序,由Web容器负责管理。我们一般所说的应用程序Application,是同一操作系统负现管理
关键是要理解:Web Container的概念,容器,就像一个公司!
4.Tomcat目录结构说明
/bin :存放 windows 或 Linux 平台上启动和关闭 Tomcat 的脚本文件
/conf:存放 Tomcat 服务器的各种配置文件,其中最重要的是 server.xml
/server:包含三个子目录: classes 、 lib 和 webapps
/lib;/common/lib; /shared/lib :类库及class文件
/logs :存放 Tomcat 的日志文件及web应用的日志文件
/webapps:默认的发布Web应用程序的目录
/work:Tomcat 把由 JSP 生成的 Servlet 放于此目录下
5.Tomcat服务器配置
Tomcat服务器的配置通过在conf/server.xml文件中配置完成,如下示例
<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" />
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" reload="true" xmlValidation="false" xmlNamespaceAware="false">
<Context path="/netjavaTest" docBase="G:\\netjavawebApp" debug="0" reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_examples_log." suffix=".txt" timestamp="true" />  
</Context>
</Host>
Host元素说明:
name :指定虚拟主机名字
debug:指定日志级别
appBase :指定虚拟主机目录,可以是绝对目录,也可以指定相对于 <CATALINA_HOME> 的相对目录。如果此项没有设定则默认的是 <CATALINA_HOME>/webapps 。
unpackWARs :如果此项设置为 true , 表示将把 Web 应用的 WAR 文件先展开为开放目录结构后再运行。如果为 false , 则直接运行 WAR 文件
autoDeploy :如果此项设置为 true , 表示当 Tomcat 服务器处于运行状态时,能够监测appBase下的文件, 如有新的 Web 加入进来,则会自动发布这个 Web 应用。
alias :指定虚拟主机的别名,可以指定多个别名。
deployOnStarup :如果此项设为 true, 则表示 Tomcat 服务器启动时会自动发布 appBase 目录下的所有 Web 应用。如果 Web 应用在 server.xml 中没有相应的 <context> 元素 , 则将采用默认的 Context 配置。 deployOnStarup 的默认设置是 true
Context元素说明
path :指定 Web 应用的 URL 入口
docBase :指定 Web 应用的文件路径,可以给定绝对路径,也可以是相对于 Host 的 appBase 属性的相对路径。如果 Web 应用采用开放目录结构,则指定 Web 应用的 根目录;如果 Web 应用是个 WAR 文件,则指定 WAR 文件的路径。
reloadable :如果为 true ,Tomcat 服务器在运行状态下会监视在 WEB-
     INF/class 和 WEB-INF/lib 下 class 文件的改动。如果检测到有 class 文件更新,服务器会自动载入 Web 应用。
crossContext :如果想在应用内调用ServletContext.getContext()来返回在该虚拟主机上运行的其他web application的request dispatcher,设为true。在安全性很重要的环境中,设为false,使得getContext()总是返回null。缺省值为false。
  debug:与这个Engine关联的Logger记录的调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为0。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-334706-1-1.html 上篇帖子: tomcat精华配置-包括单点登录 下篇帖子: 设置Tomcat的JVM虚拟机内存
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表