当前位置: 首页 > news >正文

Tomcat(3)IDEA集成Tomcat新建web应用

1、IDEA集成Tomcat

在IDEA中打开Run,选择Edit Configurations,点击+,找到Tomcat Server:

找到Tomcat在本地安装的位置并选中,点击OK。

2、新建web应用

1)创建步骤

用Java Enterprise项目模板创建project,选择Maven作为项目的构建工具:

会生成以下目录结构:

2)自带文件说明

web.xml:web项目的核心配置文件

index.jsp:默认的首页/欢迎页面

Java Server Pages:

简称 JSP,能够响应客户端发送的请求,并根据请求内容动态地生成 HTML、XML 或其他格式文档的 Web 网页的技术标准。

JSP 技术是以 Java 语言作为脚本语言的,它允许在 HTML 网页中直接插入 Java 代码(这些代码被特殊的 JSP 标记包围,如 <% 和 %>)。当 JSP 页面被请求时,服务器会执行其中的 Java 代码,然后将生成的 HTML、XML 或其他格式的内容发送回客户端的浏览器。

3)部署及运行

 点击运行:

直接访问到默认的index.jsp页面:

IDEA集成Tomcat后,部署是点击运行后自动的

点击运行按钮时,IDEA会自动启动Tomcat服务器,并将Web项目部署到服务器上。

部署过程包括将项目文件复制到Tomcat的webapps目录下,并启动相应的Servlet和JSP等组件。部署完成就可以通过浏览器访问Web应用程序了。

点击Tomcat,点击编辑配置:

查看部署:

打包方式为 war,打包功能由maven提供:

WAR(Web Application Archive)是专为 Web 应用程序设计的打包格式。一个 WAR 文件包含了 Web 应用程序的所有内容,如 HTML、JSP、Servlet 类、库文件等,以及一个特殊的 WEB-INF 目录,其中包含了 Web 应用程序的配置文件(如 web.xml)和类文件(通常被编译为 .class 文件)。

选择创建一个新的Java Enterprise项目时,如果选择Maven作为项目的构建和依赖管理工具,IDEA会自动生成一个包含基本Maven结构和pom.xml文件的项目。IDEA 已经内置了对 Maven 的支持,无需额外安装。

Maven负责打包WAR文件,Tomcat负责运行和部署这个WAR文件提供的Web应用程序。

部署方式为 war exploded:

  • WAR exploded(解压的WAR):

解压位置:WAR exploded 是将 WAR 文件的内容解压到服务器的指定目录下。这个目录通常是服务器的 webapps 目录下的一个子目录,其名称与 WAR 文件名相同。

运行方式:在解压后,服务器可以直接访问和运行这些文件,而不需要额外的处理。

灵活性:这种方式非常适合开发环境,因为开发者可以直接修改和访问这些解压后的文件,无需重新打包和部署整个 WAR 文件。

  • WAR file deployment(WAR文件部署):

解压位置:在 WAR 文件部署中,WAR 文件本身被放置在服务器的 webapps 目录下。服务器会在运行时自动解压这个 WAR 文件到一个临时的目录中,然后在这个临时目录中运行应用程序。

运行方式:应用程序是作为一个独立的单元来运行的,服务器负责处理解压和运行的过程。

灵活性:这种方式适合生产环境,因为它提供了更高的可移植性和稳定性。WAR 文件可以在不同的服务器和环境中无缝部署,而无需关心具体的文件结构和位置。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • python+django+vue汽车票在线预订系统58ip7
  • 网络安全(黑客)自学day1
  • Discuz! X收藏列表页调用封面图片详细教程
  • 【开源软件的影响力有多大?】
  • 嵌入式基础
  • 2024前端面试准备之Vue3篇
  • 60秒表达力训练法:快速提高表达能力,摆脱嘴笨带来的困扰
  • 蓝桥杯刷题--python-8(2023 填空题)
  • html的表格标签
  • 基于python+django+mysql的小区物业管理系统
  • 数字化转型导师坚鹏:政府数字化转型之数字化技术
  • 【使用IDEA总结】01——新增作者信息、方法参数返回值
  • 解决Edge浏览器,微博无法查看大图(Edge Image Viewer)
  • django定时任务(django-crontab)
  • [嵌入式系统-25]:RT-Thread -12- 内核组件编程接口 - 网络组件 - HTTP编程
  • ➹使用webpack配置多页面应用(MPA)
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • C++11: atomic 头文件
  • css布局,左右固定中间自适应实现
  • CSS中外联样式表代表的含义
  • EOS是什么
  • JavaScript服务器推送技术之 WebSocket
  • JS基础之数据类型、对象、原型、原型链、继承
  • Linux快速复制或删除大量小文件
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • Python 反序列化安全问题(二)
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • vue:响应原理
  • 爱情 北京女病人
  • 搭建gitbook 和 访问权限认证
  • 第2章 网络文档
  • 构建二叉树进行数值数组的去重及优化
  • 跨域
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 一天一个设计模式之JS实现——适配器模式
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • # 利刃出鞘_Tomcat 核心原理解析(七)
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • (C++17) optional的使用
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (蓝桥杯每日一题)love
  • (一一四)第九章编程练习
  • (原)本想说脏话,奈何已放下
  • (转)iOS字体
  • (转)scrum常见工具列表
  • .dwp和.webpart的区别
  • .Net Core和.Net Standard直观理解
  • .net 受管制代码
  • .NET 药厂业务系统 CPU爆高分析
  • .net 桌面开发 运行一阵子就自动关闭_聊城旋转门家用价格大约是多少,全自动旋转门,期待合作...
  • .Net语言中的StringBuilder:入门到精通
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • [ Linux Audio 篇 ] 音频开发入门基础知识
  • [ 代码审计篇 ] 代码审计案例详解(一) SQL注入代码审计案例
  • []FET-430SIM508 研究日志 11.3.31