要成功部署一个Web应用,则必须遵循以下标准(参考)目录结构。

  

  2、目录说明

  1)WEB-INF目录:必须直接放在Web应用上下文之下(即一级目录)。

  2)class目录:必须直接放在WEB-INF目录下。所有类文件(普通bean、servlet、监听器、过滤器、辅助类及标志处理器等)的包结构都必须直接放在class目录下,里面存放编译后的.class文件。

  3)lib目录:必须直接放在WEB-INF目录下,用于存放第三行类库文件。

  4)web.xml文件:必须直接放在WEB-INF目录下,是Web应用的部署描述文件(非常重要)。

  5)jar包:必须放在lib目录下。

  6)jar包中类的包结构:必须直接放在jar目录下,里面也是存放编译后的.class文件。

  7)META-INF目录:必须是jar包中的顶级目录。

  8)jar包中的TLD文件:必须放在META-INF目录下(可以是子目录,目录名不必是TLDS)。

  9)不在jar包中的TLD文件:必须放在WEB-INF下的某个位置。

  10)标志文件(.tag或.tagx):必须放在WEB-INF/tags下的某个位置。如果部署在jar包中,则必须放在META-INF/tags下的某个位置。

  3、补充说明

  1)Web应用根目录下(与WEB-INF同一级)的资源(比如jsp、静态HTNL、js文件、样式文件以及图片文件等),都是可以从客户端通过URL地址直接访问的。

  2)WEB-INF里面的文件都不能被客户端直接访问,即WEB-INF目录下的资源对用户来说是不可见的,但在服务器端可以使用特定的方式访问。

  3)根据第2)点,如果想禁止用户直接访问某些资源,则可以将它们存放到WEB-INF目录下。

技术分享:www.kaige123.com

javaWeb应用部署结构浅析的更多相关文章

  1. JavaWeb项目目录结构

    今天本来是准备学习spring mvc + mybatis,结果被idea的配置环境卡主了,自己刚刚接触JavaWeb不久,所以浪费了很多时间.最终我回归最简单的servlet & jsp,并 ...

  2. maven项目eclipse目录结构浅析

    maven项目eclipse目录结构浅析 PS:Java Resources是为了方便我们编译,到最后都会编译到   WEB-INF/classes Maven项目的目录结构

  3. 7-将本地的javaweb项目部署到Linux服务器的一般操作

    一.基本流程介绍: 1.安装tomcat;2.安装mysql;3.将本地的javaweb导出成.war文件,传到服务器的tomcat/webapps/下面4.将数据库文件导出成.sql文件,传到服务器 ...

  4. RocketMQ学习笔记(3)----RocketMQ物理结构和逻辑部署结构

    1. RocketMQ的物理结构 RecketMQ网络部署的特点: Name Server是一个几乎无状态特点,可集群部署,节点之间无任何信息同步的(相对于zookeeper是较为轻量级的). Bro ...

  5. 转:基于Maven管理的JavaWeb项目目录结构参考

    通常在创建JavaWeb项目时多多少少都会遵循一些既定的比较通用的目录结构,下面分享一张基于Maven管理的JavaWeb项目目录结构参考图: 上图仅是参考,不同项目不同团队都有自己的约定和规范. 个 ...

  6. javaweb可部署目录结构

    webApp //项目名称 -META-INF --MANIFEST.MF -WEB-INF --classes   //编译class文件 --lib  //依赖jar --web.xml -ind ...

  7. 使用IDEA创建JavaWeb项目 部署本地tomcat并运行

    一.下载商业版IDEA 官方链接:https://www.jetbrains.com/idea/download/#section=windows 二.新建JavaWeb项目 1.在菜单栏找到File ...

  8. 记一次JAVAWEB项目部署

    需求 原本服务器上tomcat部署了一个javaweb项目在80端口,这次要部署另一个javaweb项目在8090端口,或者同时部署在同一端口不同目录下. 解决方法 不同端口部署 不同端口部署我们需要 ...

  9. 阿里云轻量应用服务器 怎么控制怎么上传文件怎么安装JDK和Tomcat怎么完成JavaWeb的部署

    你是否遇到过这些问题,自己的javaweb项目本地运行一切正常,但是一旦转移到阿里服务器之类的.就出现以下问题. 1 jsp无法解析java类 2 Only a type can be importe ...

随机推荐

  1. osg 中鼠标拾取线段的端点和中点

    //NeartestPointNodeVisitor.h #pragma once #include <osg\Matrix> #include <vector> #inclu ...

  2. Fedora install chrome

    1)下载chrome:chrome download,选择rpm版,下载地址:https://dl.google.com/linux/direct/google-chrome-stable_curre ...

  3. Android之记住密码与自动登陆实现

    本文主要讲述了利用sharedpreference实现记住密码与自动登陆功能 根据checkbox的状态存储用户名与密码 将结果保存在自定义的application中,成为全局变量 布局文件 < ...

  4. php 的函数参数值类型限定

    如例: function test(array $a,test $b){ /*...*/ } class test{ /*...*/ } test(array(),new test); 表示test函 ...

  5. [转载]GMM的EM算法实现

    在聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut一文中我们给出了GMM算法的基本模型与似然函数,在EM算法原理中对EM算法的实现与收敛性证明 ...

  6. cf 621D

    http://acm.zzkun.com/archives/717 这个大神的解答非常,额 猥琐.但是实在是太强了.感觉所有的大数都可以用 long double 了.

  7. http://www.roncoo.com/article/detail/124822

    http://www.roncoo.com/article/detail/124822

  8. Period[HDU1358]

    Period Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  9. BZOJ3595 : [Scoi2014]方伯伯的Oj

    由于n很大,有2e8,所以不能直接用splay来维护排名 把splay修改一下 每个节点维护一个区间[l,r],表示编号在[l,r]之间的所有点都在这里 需要支持一个takeout操作: 把编号为k的 ...

  10. codeforces round #201 Div2 A. Difference Row

    #include <iostream> #include <vector> #include <algorithm> using namespace std; in ...