以tomcat为例

项目结构

开发时的项目结构

蓝框 : 存放java文件

绿框 : 存放配置文件

红框 : 存放前台代码

这个项目结构大家都很熟悉,那么当项目被部署到tomcat中时,项目的结构会发生什么变化?

tomcat中部署的项目结构

首先是项目部署路径:

  eclipse : ......\apache-tomcat-9.0.13\wtpwebapps  在tomcat根目录下的wtpwebapps内

  idea : ......\apache-tomcat-9.0.13\webapps  在tomcat根目录下webapps内

打开项目,可以看到tomcat中项目的结构有所变化

多了一个META-INF :

  用来配置应用程序、扩展程序、类加载器和服务manifest.mf文件,在用jar打包时自动生成

  而WEB-INF是 : 安全路径,客户端无法访问,只有服务端可以访问

接着打开WEB-INF

可以发现,多了classes和lib两个文件夹

  classes : 用于存储Java文件

  lib : 存储jar包

打开classes文件夹

发现classes内是开发结构的java和resources两个文件夹的整合

总结 : tomcat部署的项目,所有的java文件和配置文件都被放在了/WEB-INF/classes文件夹内!

classpath:

classpath:实际上指的是/WEB-INF/classes目录!

顾名思义,classPath:就是指类路径, 不管是SSM框架还是SpringBoot框架下,classpath就是指类路径!

在SpringMVC中,注解@RequestMapping实际就是把java文件的真实路径映射到该注解指定的路径上!

f

JavaWeb项目结构和classpath:的更多相关文章

  1. Maven下Java、JavaWeb约定标准项目结构

    1.Maven Java 项目结构: 2.Maven JavaWeb 项目结构: 注意:webapp下必须要有WEB-INF文件夹,WEB-INF文件夹下必须要有web.xml 跟 classes文件 ...

  2. idea创建Javaweb项目

    1.Javaweb项目结构 1.1修改生成.class文件的位置为WEB-INF下的classes: 生成的.class文件位置: 1.2 设置第三方jar包添加位置:

  3. JavaWeb项目目录结构

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

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

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

  5. javaweb的maven项目结构

    本来准备看javaweb的项目结构,因为之前自己建maven的项目结构,总是各种出错,后来干脆用maven自己携带的项目结构. 一个最基本的web目录结构如下,红框部分为必须有的,其他的随意. 这是一 ...

  6. 普通的javaweb项目和用maven管理的javaweb project的目录结构的区别

      图一,图二 这种就是单独的建立普通的(也就是没有用maven管理包)javaweb项目的结构目录,这种需要将普通的jar依赖放到lib目录下,之后通过bulid   图一

  7. JavaWeb项目的目录结构解释(上):

    当我们在IDEA创建JavaWeb项目时,默认的一般会有下图的目录结构,你的开发就是按照下列结构进行开发的,那么我就逐一解释他们的意思: 首先是demo:这个是项目的名字,一般你是自己创建一个与自己项 ...

  8. javaweb期末项目-项目结构

    相关链接: 项目结构:https://www.cnblogs.com/formyfish/p/10828672.html 需求分析:https://www.cnblogs.com/formyfish/ ...

  9. JavaEE——Intellij Idea 创建JavaWeb项目

    原文:JavaEE--Intellij Idea 创建JavaWeb项目 折腾Tomcat折腾了两个晚上,第一个晚上怎么都进不了Tomcat的首页,第二个晚上进去了,但是新建的Web项目,在浏览器中运 ...

随机推荐

  1. axios简单的二次封装

    import axios from 'axios' import { Message} from 'element-ui' import store from '../store' //vuex im ...

  2. leetcode 235-290 easy

    235. Lowest Common Ancestor of a Binary Search Tree 公共的祖先必定大于左点小于右点,否则不断递归到合适. class Solution { publ ...

  3. Direct2D 第5篇 绘制图像

    原文:Direct2D 第5篇 绘制图像 我加载的图像是一张透明底PNG图像,背景使用渐变的绿色画刷 #include <windows.h> #include <d2d1.h> ...

  4. CentOS上搭建Yii2 --2017

    1.安装composer(作曲家?好像是php的包管理,类似python中的pip) #安装 curl -sS https://getcomposer.org/installer | php #移动到 ...

  5. 在maven多模块结构中,并且使用overlay的情况下使用jetty热部署

    在使用maven多模块的结构的时候,同时有多个web工程使用maven-war-plugin的overlay来组织的时候,本地开发时如何在eclipse里面启动容器并且可以热部署调试是个比较麻烦的问题 ...

  6. C#创建日志方法

    1.通过流的方式 public void WriteLog(string log) { StreamWriter stream; string path = "D:/WriteLog/&qu ...

  7. maven的配置和使用

    Maven 简介 1.1 Maven 是什么 翻译为“专家”,“内行” Maven是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.2 为什么使用Maven ...

  8. C++之以分隔符的形式获取字符串

    void CConvert::Split(const std::string& src, const std::string& separator, std::vector<st ...

  9. 管理神话之"我还能做大量的技术工作"

    “你要知道,如果你想做好一件事,你就必须自己动手.”Clive一边咕哝着,一边走回自己的房间. Susan原本在埋头工作.她抬起头来,叹了口气.然后起身,跟着Clive穿过走廊,来到他的房间门口.她敲 ...

  10. Leetcode746.Min Cost Climbing Stairs使用最小花费爬楼梯

    数组的每个索引做为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 cost[i](索引从0开始). 每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯. 您需 ...