Tomcat_WebApp

news2024/9/19 13:28:22

Tomcat的目录的介绍

  1. /bin
    这个目录包含启动和关闭 Tomcat 的脚本。

    • startup.bat / startup.sh:用于启动 Tomcat(.bat 文件是 Windows 系统用的,.sh 文件是 Linux/Unix 系统用的)。
    • shutdown.bat / shutdown.sh:用于停止 Tomcat。
  2. /conf
    这是 Tomcat 的配置文件目录,里面的文件用来配置服务器的行为。

    4aa2181b85c0469da9be492277a5ce79.png

    • server.xml:Tomcat 的核心配置文件,定义了服务器的端口、连接器、虚拟主机等。
    • web.xml:全局的 Web 应用程序配置文件,设置默认的 MIME 类型、欢迎页面、错误处理等。
    • context.xml:每个 Web 应用的默认配置。
  3. /lib
    这个目录包含 Tomcat 运行时需要的 Java 类库和依赖包。大多数情况下,你不需要改动这个目录,它已经包含了 Tomcat 必需的库文件。

  4. /logs
    Tomcat 的日志文件会存放在这里。你可以通过查看这些日志来了解服务器的运行状态、错误信息以及访问记录。

    • catalina.out:这是 Tomcat 主要的日志文件,记录了 Tomcat 启动时输出的所有信息。
  5. /temp
    这是 Tomcat 临时文件的存放目录。在运行 Web 应用时,有些临时文件会存储在这个目录中。

  6. /webapps
    这个目录是 Web 应用程序的部署目录。你可以把 .war 文件(Java Web 应用打包格式)或解压后的应用放在这个目录下,Tomcat 会自动加载和运行这些应用。

    • 默认情况下,Tomcat 自带了一些 Web 应用,比如 ROOTmanager(Tomcat 管理应用)、host-manager 等。
  7. /work
    这个目录存放的是 Tomcat 运行时生成的临时文件,主要是 JSP 转化成的 Servlet 代码。如果你对 JSP 做了修改,Tomcat 会自动重新编译它们,并把生成的文件存放在这里。

小结

  • bin:用于启动和关闭 Tomcat 的脚本。
  • conf:服务器的配置文件。
  • lib:Tomcat 的类库。
  • logs:存放服务器的日志。
  • webapps:存放你的网站或 Web 应用程序。
  • worktemp:存放运行时的临时文件。

 Tomcat_WebApp的标准结构:

/myapp  (应用的根目录)
│
├── /WEB-INF  (Web 应用的核心配置目录)
│   ├── web.xml  (Web 应用的描述符文件)
│   ├── classes/  (存放编译后的 Java 类文件)
│   ├── lib/  (存放 Web 应用的第三方库文件,如 .jar 包)
│   └── classes/  (Java 类文件的目录)
│
├── /META-INF  (可选的元数据目录,通常包含 MANIFEST.MF 文件)
│
├── /static  (存放静态资源文件,图片、CSS、JS等)
│
├── /jsp  (存放 JSP 页面文件)
│
└── index.jsp  (Web 应用的主页文件,可放在根目录)

79dd5c5df8e04757a3934400c26c2be5.png

 

 

url的成部分和项目中资源的对应关系: 

8511421f53b641c983801f7bdee5d8c4.png

 

Web项目部署的方式:

方式1:

直接将编译好的项目放在webapps目录下

方式2 :

将编译好的项目打成war包放在webapps目录,tomcat启动后会自动解压war包(其实和第一种一样,后面通过maven完成)。

方式3:

可以将项目放在非webapps的其他目录下,在Tomcat中通过配置文件指向app的实际磁盘路径。

在tomcat的conf下创建Catalina/localhost目录,并在该目录下准备一个app.xml文件

d51257d32df943d4aeb254ab247dbe9e.png

 

69b24c76a86b4e3e9bcdeec924676744.png

 

例如: 

54d52f21ff5245f292dfff59745c2023.png

<!--path:项目的访问路径,也是项目的上下文路径,就是在浏览器中,输入的项目名称
docBase:项目在磁盘中的实际路径
-->
<Context path="/app" docBase="D:\mywebapps\app" />

管理访问 Tomcat 管理页面的权限:


tomcat-users.xml:存储tomcat用户的文件,这里保存的是tomcat的用户名及密码,以及用户的角色信息。可以按着该文件中的注释信息添加tomcat用户,然后就可以在Tomcat主页中进入Tomcat Manager页面了

例如添加账号密码都为admin:

 <role rolename="admin-gui"/>
    <role rolename="admin-script"/>
    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>

    <user username="admin" 
          password="admin" 
          roles="admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"
    />

浏览器访问:/managerhttp://localhost:8080/manager/html 出现Tomcat Web应用程序管理者即可

如何使用IDEA来开发JavaWeb工程

76a7c798f605478f9182d42ab7ad226b.png

 2b0947d510064f1b8ead42f497559648.png

769616e3d61242ad9ada9b25009695bd.png32a2e85aa8e74049928a135a1cfed72d.png 32ecb4f2a81b44b28505d786ebf38c4f.png

b63f30cd637747daaa61445756fe6c24.png

找到add framework support之后就可以找到web6.0的版本,之后就会有一个web的导包

0fd0831d1a87444d81d3bd98b2cb73cf.png

如何进行把Java依赖项导入IDEA?

a43a6652fa224e36999f1933365c6069.png

建立好了基本框架如何进行Build? 

ee61f15ec11c4261b2bdf3525ccda30d.png

要手动点Build Artificats,否则没有out里面WEB -INF的包 

 Bulid之后有自动的生成的out文件

fda6ba09f5b04500a369b176de34a5fd.png

详细配置,链接:在【IntelliJ IDEA】中配置【Tomcat】【2023版】【中文】【图文详解】_怎么在新版的intellijidea中配置tomcat服务器-CSDN博客 IDEA中设置properties在IDEA中创建properties配置文件_idea创建properties配置文件-CSDN博客

如何在IDEA中使用Tomcat?

3bcef451a0f342a487b2e853c70e30fa.png

2ebaab73285041d199cbcbfb0593b286.pngApplication context是网址输入的名称

258014e90ee142bb92e1619bf39ea34e.png

为什么Tomcat里面没有该项目的XML?

因为TomCat在IDEA当中设置了一个副本 

dd5010a6a4904bc38b5190f1241221d9.png

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2146345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java 实现桌面烟花秀

前言 今天&#xff0c;我们将展示如何使用 Java Swing 创建一个烟花效果&#xff0c;覆盖整个桌面。我们将重点讲解如何在桌面上展示烟花、如何实现发射和爆炸效果&#xff0c;以及如何将这些效果整合到一个完整的程序中。 效果展示 如上图所示&#xff0c;我们在桌面实现了&…

【开源大模型生态9】百度的文心大模型

这张图展示了百度千帆大模型平台的功能架构及其与BML-AI开发平台和百度百舸AI异构计算平台的关系。以下是各个模块的解释&#xff1a; 模型广场&#xff1a; 通用大模型&#xff1a;提供基础的自然语言处理能力。行业大模型&#xff1a;针对不同行业的定制化模型。大模型工具链…

新的 MathWorks 硬件支持包支持从 MATLAB 和 Simulink 模型到高通 Hexagon 神经处理单元架构的自动化代码生成

MathWorks 今天宣布&#xff0c;推出针对 Qualcomm Hexagon™ 神经处理单元&#xff08;NPU&#xff09;的硬件支持包。该处理单元嵌入在 Snapdragon 系列处理器中。MathWorks 硬件支持包&#xff0c;则专门针对 Qualcomm Technologies 的 Hexagon NPU 架构进行优化&#xff0c…

基于SSM的“校园外卖管理系统”的设计与实现(源码+数据库+文档+开题报告)

基于SSM的“校园外卖管理系统”的设计与实现&#xff08;源码数据库文档开题报告) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SSM 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 消费者系统结构图 商户系统结构图 管理员系统结构图 校…

数据脱敏 (Jackson + Hutool 工具包)

一、简介 系统使用 Jackson 序列化策略&#xff0c;对标注了 Sensitive 注解的属性进行脱敏处理 基于Hutool 脱敏案列&#xff1a; Retention(RetentionPolicy.RUNTIME) Target(ElementType.FIELD) JacksonAnnotationsInside// 表示只对有此注解的字段进行序列化 JsonSeriali…

MySQL高阶1831-每天的最大交易

题目 编写一个解决方案&#xff0c;报告每天交易金额 amount 最大 的交易 ID 。如果一天中有多个这样的交易&#xff0c;返回这些交易的 ID 。 返回结果根据 transaction_id 升序排列。 准备数据 Create table If Not Exists Transactions (transaction_id int, day date, …

吹爆上海交大的大模型实战教程!!—《动手学大模型》附实战教程及ppt

今天分享一个上海交大的免费的大模型课程&#xff0c;有相关教程文档和Slides&#xff0c;目前是2.2K星标&#xff0c;还是挺火的&#xff01; 《动手学大模型》系列编程实践教程&#xff0c; 由上海交通大学2024年春季《人工智能安全技术》课程&#xff08;NIS3353&#xff09…

深入剖析Docker容器安全:挑战与应对策略

随着容器技术的广泛应用&#xff0c;Docker已成为现代应用开发和部署的核心工具。它通过轻量级虚拟化技术实现应用的隔离与封装&#xff0c;提高了资源利用率。然而&#xff0c;随着Docker的流行&#xff0c;其安全问题也成为关注焦点。容器化技术虽然提供了良好的资源隔离&…

SHAP 模型可视化 + 参数搜索策略在轴承故障诊断中的应用

往期精彩内容&#xff1a; Python-凯斯西储大学&#xff08;CWRU&#xff09;轴承数据解读与分类处理 Python轴承故障诊断入门教学-CSDN博客 Python轴承故障诊断 (13)基于故障信号特征提取的超强机器学习识别模型-CSDN博客 Python轴承故障诊断 (14)高创新故障识别模型-CSDN…

Linux用户组管理

目录 一、增删改用户组 1.1. 创建一个新的用户组 1.2. 创建用户组并指定ID 1.3. 修改用户组的名 1.4. 修改用户组的ID 1.5. 删除一个用户组 二、用户组中的用户操作 2.1. 添加用户到一个已存在的用户组 2.2. 从用户组中移除用户 注&#xff1a;本章内容全部基于Centos…

论文阅读--Planning-oriented Autonomous Driving(二)

自动驾驶框架的各种设计比较。 ( a )大多数工业解决方案针对不同的任务部署不同的模型。 ( b )多任务学习方案共享一个具有分割任务头的主干。 ( c )端到端范式将感知和预测模块统一起来。以往的尝试要么采用( c.1 )中对规划的直接优化&#xff0c;要么采用( c.2 )中的部分元…

基于PHP的高校毕业生就业服务平台

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于phpMySQL的高校毕业生就业…

html,css基础知识点笔记(二)

9.18&#xff08;二&#xff09; 本文主要教列表的样式设计 1&#xff09;文本溢出 效果图 文字限制一行显示几个字&#xff0c;多余打点 line-height: 1.8em; white-space: nowrap; width: 40em; overflow: hidden; text-overflow: ellipsis;em表示一个文字的大小单位&…

MySQL实战面试题(附案例答案+建表语句+模拟数据+案例深度解析),练完直接碾压面试官

知识点思维导图 案例1 建表语句与模拟数据 用户表 users CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, email VARCHAR(100) NOT NULL UNIQUE, signup_date DATE NOT NULL ); INSERT INTO users (username, email, signu…

C++ | Leetcode C++题解之第416题分割等和子集

题目&#xff1a; 题解&#xff1a; class Solution { public:bool canPartition(vector<int>& nums) {int n nums.size();if (n < 2) {return false;}int sum 0, maxNum 0;for (auto& num : nums) {sum num;maxNum max(maxNum, num);}if (sum & 1)…

ICL、CoT、ReAct个人记录

In-Context Learning(ICL) 将一些带有标签的样本拼接起来&#xff0c;作为prompt的一部分。不涉及梯度更新&#xff0c;因此不属于ft CoT 但是其依然属于静态的黑盒子&#xff0c;依靠其推理的结果很难与真实知识保持一致&#xff0c;且限制了推理过程中及时反应和知识更新的…

技术生态系统中的绿色可持续发展与商业模式创新:The Open Group 2024大会引领未来发展趋势

绿色转型与商业模式创新在技术生态系统中的核心地位 在全球范围内&#xff0c;企业正面临着双重挑战&#xff1a;如何在推动技术生态系统创新的同时&#xff0c;践行可持续发展的承诺。随着气候变化压力的增加&#xff0c;绿色经济成为企业发展和创新的必然趋势。然而&#xf…

Python基础(八)——MySql数据库

一.数据库 【库——>表——>数据】 借助数据库对数据进行组织存储&#xff0c;借助SQL语言对数据库、数据进行操作管理 Mysql数据库 下载&#xff1a;https://www.mysql.com/ 查看是否安装配置成功&#xff1a; 安装DBeaver用于Mysql数据库图形化 安装&#xff1a;…

Python语言学习-pandas库学习

一、什么是Pandas库 Pandas是python的第三方库&#xff0c;他用于灵活的数据操作&#xff0c;数据可视化&#xff0c;数据清洗&#xff0c;数据的聚合和转换&#xff0c;数据的可视化 二、安装pandas库 在终端中运行 pip install pandas 导入Pandas库并重命名为pd import …

腹腔镜工具识别与定位系统源码分享

腹腔镜工具识别与定位检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comp…