Tomcat_WebApp

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.rhkb.cn/news/426893.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ICMC 2024 has Arrived, and We’ll See You There

It’s finally time for the International Cryptographic Module Conference this year! ICMC 2024 will perhaps be the most energized ICMC to date, as post-quantum cryptography (PQC) – a topic that’s been weighing on most of our minds – features prominently …

大模型研发全揭秘:带你掌握训练后模型的最佳存储方案

在大模型项目的研发中&#xff0c;模型保存是每个AI从业者都必须掌握的重要技能。保存模型不仅能让我们在未来进行推理和预测&#xff0c;还能帮助我们继续优化和调整模型。因此&#xff0c;掌握如何高效保存模型显得尤为重要。本文将通过详细的技术细节和清晰的步骤&#xff0…

使用密钥文件登陆Linux服务器

假设A服务器为登陆目标,已经运行ssh服务。 B服务器作为登陆发起端。 登陆A服务器,账户S。 运行命令: ssh-keygen -t rsa 此时账户S家目录下会自动创建目录“.ssh”,目录下会有id_rsa和id_rsa.pub两个文件。 id_rsa为私钥,id_rsa.pub为公钥。 id_rsa文件内容下载到B服务…

【无人机/平衡车/机器人】详解STM32+MPU6050姿态解算—卡尔曼滤波+四元数法+互补滤波(文末工程资料下载)

效果: 目录 基础知识详解 欧拉角 加速度计(Accelerometer)与姿态测量 陀螺仪(Gyroscope)与姿态测量 姿态解算算法1-互补滤波 姿态解算算法2-四元数法 姿态解算算法3-卡尔曼滤波 组成 1.预测状态方程 2. 预测协方差方程 3. 卡尔曼增益方程 4. 跟新最优值方程(卡尔…

攻防世界--->BABYRE

做题笔记。(可以作为例题。) 下载 查壳 64ida打开。 分析&#xff1a; 动态试一试。 跟进judge 很奇怪是一段.data(数据段) 报错&#xff0c;但是程序并没有结束&#xff1a; 我们对其进行处理&#xff1a;&#xff08;动态函数处理&#xff09; 因为call不能用在.data段&…

4.qml单例模式

这里写目录标题 js文件单例模式qml文件单例模式 js文件单例模式 直接添加一个js文件到qml中 修改内容 TestA.qml import QtQuick 2.0 import QtQuick.Controls 2.12 import "./MyWork.js" as MWItem {Row{TextField {onEditingFinished: {MW.setA(text)}}Button…

Docker部署及基本操作

Docker是一个开源的平台 &#xff0c;用于开发、交付和运行应用程序。它能够在Windows&#xff0c;macOS&#xff0c;Linux计算机上运行&#xff0c;并将某一应用程序及其依赖项打包至一个容器中&#xff0c;这些容器可以在任何支持Docker的环境中运行。容器彼此隔离&#xff0…

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…

『功能项目』QFrameWork框架重构OnGUI【63】

我们打开上一篇62QFrameWork背包框架的项目&#xff0c; 上文将功能实现在一个脚本中 本章要做的事情让脚本实现背包框架思想 首先按照图示创建脚本&#xff1a; 创建脚本&#xff1a;Item.cs namespace QFramework {public class Item{//道具public string Key;public string …

2024秋季云曦开学考

web ezezssrf 打开环境&#xff0c;代码审计 看起来有点多&#xff0c;要绕过五层 第一层&#xff1a;存在弱比较&#xff0c;使用数组或0e绕过 yunxi[]1&wlgf[]2 yunxis878926199a&wlgfs155964671a 第二层&#xff1a;存在强比较&#xff0c;此处使用string限制…

superset 解决在 mac 电脑上发送 slack 通知的问题

参考文档: https://superset.apache.org/docs/configuration/alerts-reports/ 核心配置: FROM apache/superset:3.1.0USER rootRUN apt-get update && \apt-get install --no-install-recommends -y firefox-esrENV GECKODRIVER_VERSION0.29.0 RUN wget -q https://g…

【智路】智路OS airos-edge

欢迎来到智路OS https://gitee.com/ZhiluCommunity/airos-edge 智路OS是全球首个开源开放的智能网联路侧单元操作系统&#xff08;简称“智路OS”&#xff09;&#xff0c; 是以高等级自动驾驶技术为牵引&#xff0c;沉淀出来的“车路云网图”一体化的智能交通基础软件平台。…

Ansible——Playbook基本功能

文章目录 一、Ansible Playbook介绍1、Playbook的简单组成1&#xff09;“play”2&#xff09;“task”3&#xff09;“playbook” 2、Playbook与ad-hoc简单对比区别联系 3、YAML文件语法&#xff1a;1. 基本结构2. 数据类型3. 列表4. 字典&#xff08;映射&#xff09;5. 注释…

【数据结构】排序算法---归并排序

文章目录 1. 定义2. 算法步骤3. 动图演示4. 性质5. 算法分析6. 代码实现C语言——迭代版C语言——递归版PythonJavaC——迭代版C——递归版Go 结语 1. 定义 归并排序&#xff08;Merge sort&#xff09;是建立在归并操作上的一种有效的排序算法。该算法是采用分治法&#xff0…

CentOS7.9环境上NFS搭建及使用

Linux环境NFS搭建及使用 1. 服务器规划2. NFS服务器配置2.1 主机名设置2.2 nfs安装2.2.1 repo文件替换2.2.2 NFS服务安装 2.3 nfs配置2.4 服务查看2.5 资源发布2.6 配置nfs服务开机自启2.7 端口开放 3.应用服务器配置3.1 主机名设置3.2 nfs安装3.2.1 repo文件替换3.2.2 NFS服务…

你真的需要理解Diffusion(扩散模型),它在视觉领域具有无与伦比的美丽!

【Vision结合Diffusion】模型的研究方向&#xff0c;探索了如何利用扩散模型在数据空间中模拟随机游走的特性&#xff0c;以生成高质量和逼真的图像。这一领域的研究&#xff0c;通过结合视觉感知和文本描述&#xff0c;推动了图像合成技术的发展&#xff0c;尤其是在个性化图像…

对人像图添加指定光源,再进行二次扩图

在一些业务场景中&#xff0c;需要对人像图片添加特定光源&#xff0c;来增加氛围感&#xff0c;例如赛博朋克科技、海边夕阳余晖、以及红蓝相间的高冷&#xff1b;但实现这个功能的难点是&#xff1a;如何将光源与原图片融合&#xff0c;在图片上产生正常光的镜面反射&#xf…

从数据仓库到数据中台再到数据飞轮:我了解的数据技术进化史

这里写目录标题 前言数据仓库&#xff1a;数据整合的起点数据中台&#xff1a;数据共享的桥梁数据飞轮&#xff1a;业务与数据的双向驱动结语 前言 在当今这个数据驱动的时代&#xff0c;企业发展离不开对数据的深度挖掘和高效利用。从最初的数据仓库&#xff0c;到后来的数据…

工业一体机在汽车零部件工厂ESOP系统中的关键作用

在当今竞争激烈的汽车市场中&#xff0c;汽车零部件工厂的高效生产和严格质量控制至关重要。而工业一体机在汽车零部件工厂的 ESOP&#xff08;电子标准化作业程序&#xff09;系统中发挥着关键作用。 一、汽车零部件工厂面临的挑战 汽车零部件的生产过程复杂且要求严格&#…

【sgCreateCallAPIFunctionParam】自定义小工具:敏捷开发→调用接口方法参数生成工具

<template><div :class"$options.name" class"sgDevTool"><sgHead /><div class"sg-container"><div class"sg-start"><div style"margin-bottom: 10px">参数列表[逗号模式]<el-too…