JavaWeb项目结构和classpath:
以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:的更多相关文章
- Maven下Java、JavaWeb约定标准项目结构
		1.Maven Java 项目结构: 2.Maven JavaWeb 项目结构: 注意:webapp下必须要有WEB-INF文件夹,WEB-INF文件夹下必须要有web.xml 跟 classes文件 ... 
- idea创建Javaweb项目
		1.Javaweb项目结构 1.1修改生成.class文件的位置为WEB-INF下的classes: 生成的.class文件位置: 1.2 设置第三方jar包添加位置: 
- JavaWeb项目目录结构
		今天本来是准备学习spring mvc + mybatis,结果被idea的配置环境卡主了,自己刚刚接触JavaWeb不久,所以浪费了很多时间.最终我回归最简单的servlet & jsp,并 ... 
- 转:基于Maven管理的JavaWeb项目目录结构参考
		通常在创建JavaWeb项目时多多少少都会遵循一些既定的比较通用的目录结构,下面分享一张基于Maven管理的JavaWeb项目目录结构参考图: 上图仅是参考,不同项目不同团队都有自己的约定和规范. 个 ... 
- javaweb的maven项目结构
		本来准备看javaweb的项目结构,因为之前自己建maven的项目结构,总是各种出错,后来干脆用maven自己携带的项目结构. 一个最基本的web目录结构如下,红框部分为必须有的,其他的随意. 这是一 ... 
- 普通的javaweb项目和用maven管理的javaweb project的目录结构的区别
		图一,图二 这种就是单独的建立普通的(也就是没有用maven管理包)javaweb项目的结构目录,这种需要将普通的jar依赖放到lib目录下,之后通过bulid 图一 
- JavaWeb项目的目录结构解释(上):
		当我们在IDEA创建JavaWeb项目时,默认的一般会有下图的目录结构,你的开发就是按照下列结构进行开发的,那么我就逐一解释他们的意思: 首先是demo:这个是项目的名字,一般你是自己创建一个与自己项 ... 
- javaweb期末项目-项目结构
		相关链接: 项目结构:https://www.cnblogs.com/formyfish/p/10828672.html 需求分析:https://www.cnblogs.com/formyfish/ ... 
- JavaEE——Intellij Idea 创建JavaWeb项目
		原文:JavaEE--Intellij Idea 创建JavaWeb项目 折腾Tomcat折腾了两个晚上,第一个晚上怎么都进不了Tomcat的首页,第二个晚上进去了,但是新建的Web项目,在浏览器中运 ... 
随机推荐
- axios简单的二次封装
			import axios from 'axios' import { Message} from 'element-ui' import store from '../store' //vuex im ... 
- leetcode 235-290 easy
			235. Lowest Common Ancestor of a Binary Search Tree 公共的祖先必定大于左点小于右点,否则不断递归到合适. class Solution { publ ... 
- Direct2D  第5篇 绘制图像
			原文:Direct2D 第5篇 绘制图像 我加载的图像是一张透明底PNG图像,背景使用渐变的绿色画刷 #include <windows.h> #include <d2d1.h> ... 
- CentOS上搭建Yii2  --2017
			1.安装composer(作曲家?好像是php的包管理,类似python中的pip) #安装 curl -sS https://getcomposer.org/installer | php #移动到 ... 
- 在maven多模块结构中,并且使用overlay的情况下使用jetty热部署
			在使用maven多模块的结构的时候,同时有多个web工程使用maven-war-plugin的overlay来组织的时候,本地开发时如何在eclipse里面启动容器并且可以热部署调试是个比较麻烦的问题 ... 
- C#创建日志方法
			1.通过流的方式 public void WriteLog(string log) { StreamWriter stream; string path = "D:/WriteLog/&qu ... 
- maven的配置和使用
			Maven 简介 1.1 Maven 是什么 翻译为“专家”,“内行” Maven是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.2 为什么使用Maven ... 
- C++之以分隔符的形式获取字符串
			void CConvert::Split(const std::string& src, const std::string& separator, std::vector<st ... 
- 管理神话之"我还能做大量的技术工作"
			“你要知道,如果你想做好一件事,你就必须自己动手.”Clive一边咕哝着,一边走回自己的房间. Susan原本在埋头工作.她抬起头来,叹了口气.然后起身,跟着Clive穿过走廊,来到他的房间门口.她敲 ... 
- Leetcode746.Min Cost Climbing Stairs使用最小花费爬楼梯
			数组的每个索引做为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 cost[i](索引从0开始). 每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯. 您需 ... 
