我的程序员面试系列

面试题:Java Web Project里我们会遇到下面两种文件夹:webapp和WebContent。

这两个文件夹下都有个字文件夹WEB-INF,里面都有web.xml。为什么有这两种不同的文件夹?作用是什么?

答案:如果在Eclipse用File->New->Dynamic Web Project创建的项目,会得到WebContent文件夹。如果是一个Maven项目,则会得到src/main/webapp文件夹。

Maven项目里不同的文件夹名称的规范:http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html

我们一般都按照这些统一命名规范来创建文件夹。当然Maven规范也说了,如果您看着这些规范不顺眼,可以通过修改project descriptor来调整。

而传统Java Web项目的WebContent文件夹呢?这个WebContent里面存放的是我们Web应用的资源比如JavaScript脚本文件和HTML。当应用部署到Web服务器比如Tomcat时,这个WebContent就不再需要了。

看个例子。对Web项目点右键,在属性里选择Deployment Assembly,这个可以定义Web项目部署到服务器之后的文件夹映射关系。

下图我的例子,意思是将Eclipse项目的WebContent下面的所有资源,直接部署到服务器应用的根目录下。

到我本地安装的Tomcat服务器的文件夹下面去看,发现应用的根目录下面果然没有WebContent了,而是直接包含了所有的JavaScript和HTML资源文件。

Java文件和文件夹的区别_Java面试系列-webapp文件夹和WebContent文件夹的区别?-kingsoft是什么文件夹...相关推荐

  1. spring cloud每次修改必须重新打包_Java面试系列spring相关

    Spring中的Bean是线程安全的吗? Spring 中的 bean 默认都是单例的,所有线程都共享一个单例实例Bean,因此是存在资源的竞争,是线程不安全的. 但是spring中大部分bean都是 ...

  2. java io流区别_Java中IO流的分类和BIO,NIO,AIO的区别

    到底什么是IO 我们常说的IO,指的是文件的输入和输出,但是在操作系统层面是如何定义IO的呢?到底什么样的过程可以叫做是一次IO呢? 拿一次磁盘文件读取为例,我们要读取的文件是存储在磁盘上的,我们的目 ...

  3. java foreach和for循环区别_java相关:老生常谈foreach(增强for循环)和for的区别

    java相关:老生常谈foreach(增强for循环)和for的区别 发布于 2020-8-18| 复制链接 下面小妖就为大家带来一篇老生常谈foreach(增强for循环)和for的区别.小妖觉得挺 ...

  4. java使用的页面静态化技术_java秒杀系列(2)- 页面静态化技术

    ###前言 通过代码片段分别介绍服务端渲染.客户端渲染.对象缓存三种方式的写法. 代码片段仅供参考,具体实现需要根据业务场景自行适配,但思想都是一样. 一.服务端渲染方式 ####1.接口返回html ...

  5. java并发核心知识体系精讲_Java 面试突击之 Java 并发知识基础 amp; 进阶考点全解析

    版权说明:本文内容根据 github 开源项目整理所得 项目地址: https://github.com/Snailclimb/JavaGuide​github.com 一.基础 什么是线程和进程? ...

  6. java 暂停等返回值在执行_java面试技巧(2)

    java面试试题及答案 以下是Java面试问题及答案: 1.简要介绍java程序的健壮性. 答:JAVA 程序会在编译和运行的时候自动的检测可能出现的错误,而且它是一种强类型语言,对于类型的检查很严格 ...

  7. java 如何判定消息已在队列_Java面试—消息队列

    消息队列面试题 题目来自于中华石杉,解决方案根据自己的思路来总结而得.题目主要如下: 1. 为什么要引入消息队列? 消息队列的引入可以解决3个核心问题: 解耦 异步 削峰 解耦 在一个项目中,如果一个 ...

  8. mybatis嵌套查询和嵌套结果有什么区别_Java面试专题之九:Mybatis面试5个大概率被问到的问题...

    1.为什么说 Mybatis 是半自动 ORM 映射工具?它与全自动的区别在哪里? Hibernate 属于全自动 ORM 映射工具,使用 Hibernate 查询关联对象或者关联集合对象时,可以根据 ...

  9. 静态导入 java面试_Java面试系列【静态导入】-静态导入,基础篇

    import是学习Java的人最熟悉不过的语句了,我们通过import语句导入类.但实际上我们对于import还有其他用法. import static 看一段代码: import java.util ...

最新文章

  1. C实现的一个简单的学生成绩管理系统
  2. CSS如何设置高度为屏幕高度_(15)让这些“展示”有更好的扩展性——媒体查询 | CSS...
  3. 宏定义和内联函数的学习
  4. 白盒测试方法静态分析_静态分析的教育方面
  5. github上传文件
  6. 无法打开登录所请求的数据库 sa。登录失败。 用户 sa 登录失败。
  7. 如何使用“查找”App 定位丢失的设备或物品?
  8. java学习笔记_Java大白话学习笔记(01)—数组以及内存图解
  9. Open***服务器端配置文件server.conf的说明
  10. 深入浅出看懂AlphaGo Zero (文章最后有原AlphaGo Zero论文地址)
  11. MATLAB 比较好入门书籍有哪些推荐
  12. 旧式有线打印机联网探索
  13. FPGA时钟电路PCBlayout设计原则
  14. LeetCode-704.二分查找
  15. LDC(logic data center)与传统的(Internet Data Center-IDC)架构对比与优势(淘宝双十一经典案例解析)
  16. 证明厄米矩阵不同特征值对应特征向量正交
  17. Linux 下后台运行程序,查看和关闭后台运行程序
  18. MySQL 中的 CURDATE 函数与相关方法
  19. c语言二级考要不要笔试,二级MS和二级C语言的一些注意事项
  20. JavaSE02-IO

热门文章

  1. java界面竖的滑块,使用滑块功能在绘图中滑动垂直线
  2. uni-app 看图猜成语(源码分享)
  3. springboot中下载模板功能
  4. python的设计理念_python设计理念,英文不错自己看。
  5. 【安全狐】BURP代理及安装证书
  6. 中国象棋,马不重复的走完每一格
  7. After Effects: Animated Write-on Type After Effects:动画Write-on类型 Lynda课程中文字幕
  8. MacBook pro 2018款死机或出现故障的重启问题
  9. 暴强贴:从.NET平台调用Win32 API
  10. 360wifi设置接收wifi教程