IDEA如何部署JAVAWEB项目到TOMCAT?

循循善诱
• 阅读 7735

IDEA创建一个传统JAVA WEB项目(不使用maven构建)

  • 方法一
File --> NEW --> Project --> Java (勾选Web Application)
  • 方法二
File --> NEW --> Project --> Java Enterprise(勾选Web Application)

IDEA部署JAVA WEB项目

IDEA 并非把项目放到 tomcat 的 webapp目录中,而项目还是在源项目目录IDEA采用了一种无入侵Tomcat项目方式部署(不修改tomcat任何文件) <虚拟目录方式>

在IDEA启动Tomcat后,会在 ${user.home}/.IntelliJIdea/system/tomcat 目录下创建对应projectName目录,并复制3个目录到 ${user.home}/.IntelliJIdea/system/tomcat/projectName 目录下,这样造成每个项目对应一个tomcat配置、一个tomcat日志、一个tomcat工作目录
三个目录:conf、logs、work

在conf/Catalina/localhost/ROOT.xml配置文件中,有关联JAVAWEB项目的配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="G:\work\java\je\out\artifacts\je_war_exploded" />

conf/Catalina/localhost/ROOT.xml 配置文件属性

<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="G:\work\java\je\out\artifacts\je_war_exploded" />
  • path
设置访问web应用入口的URL(设置URL入口路由)
  • docBase
设置web应用的项目路径
  • className
指定实现Context接口的Java类名
  • reloadable
如果设置为true,tomcat会根据WEB-INF目录改动自动重新加载,一般开发/调试时设置为true,正式生产环境设置为false

虚拟目录

作用:
1、在URL中host:port相同的情况下,可以部署多个项目(一般很少这样用法)
例如:
http://localhost:8080/
http://localhost:8080/manager
http://localhost:8080/admin

2、把项目存放位置从tomcat根目录下webapps分离出来,更安全
  • 配置方法一
创建: tomcat根目录\conf\Catalina\域名\test.xml 文件
内容:  <?xml version="1.0" encoding="UTF-8"?>
       <Context docBase="G:\work\java\je\out\artifacts\je_war_exploded" />
       
访问url: http://localhost:8080/test

虚拟主机

作用:一台服务器绑定多个域名,一个域名对应一个项目(多数情况)或者一个域名对应多个项目(很少见)
  • 配置方法
在 tomcat根目录\conf\server.xml 文件中加入如下代码:
 <Host name="www.jalja2.org" appBase="E:/学习/activeMq/app2" unpackWARs="true" autoDeploy="true"></Host>

(部署到Tomcat上)WEB应用的目录结构

IDEA如何部署JAVAWEB项目到TOMCAT?

注意:WEB-INF目录是受保护的,外界不能直接访问

点赞
收藏
评论区
推荐文章
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
4年前
javaweb练手项目jsp+servlet简易购物车系统
简易购物车项目这是一个用intellijIDEA做的简易的javaweb项目,开发环境使用的jdk1.8和tomcat8以及mysql数据库。1.项目开发准备:1.创建github仓库2.项目框架搭建3.项目构建并同步仓库4.编写所需业务逻辑2.开发项目解决方案:
菜鸟阿都 菜鸟阿都
4年前
tomcat输出控制台信息乱码
使用idea开发java项目时,将其打包成war包,并使用tomcat启动,但控制台输出的中文信息乱码,与大家分享一下解决方案控制台乱码信息如下解决方案:修改文件位置:apachetomcat9.0.44\conf\logging.properties将其中的5处UTF8编码修改为GBK重启项目,idea控制台输出的tomcat部署信息乱码问题得到了解决
Stella981 Stella981
4年前
IntelliJ IDEA 12 与 Tomcat 集成并运行Web项目
打算从Eclipse换IDEA了,周六上午没事干来捣鼓捣鼓。配置基本改成自己习惯的了,并探索了一下IDEA的各种功能。\\注:\\本文使用的是IDEA12U(试用30天)下面分享下我在IDEA上直接把Web项目跑到Tomcat上的方法(跟Eclipse好像不太一样,有那么一点点小麻烦)具体步骤如下:1.创建Web项
Stella981 Stella981
4年前
IDEA+Maven搭建JavaWeb项目
首先新建一个maven项目,不选择任何模板!(https://oscimg.oschina.net/oscnet/2856ecc3c6830d41be1f7c3d8d953a8452e.png)然后填写项目坐标完成新建完成会得到一个标准的maven项目的目录!(https://oscimg.oschina.net/oscnet/ab9
Wesley13 Wesley13
4年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
4年前
IDEA创建web工程,不用Archetype(超简单)
Idea不用Archetype创建Web项目以新建模块为例。新建Maven项目不勾选【Createfromartchetype】,直接Nextpom中添加一句话:<artifactIdXXX</artifactId<!↓
Stella981 Stella981
4年前
JFinal 部署在 Tomcat 下推荐方法
  经常有人在群里问tomcat下项目部署的问题,现写个简单的博文,希望能帮助到有需要的人。  首先明确一下JFinal项目是标准的javaweb项目,其部署方式与普通javaweb项目没有任何差别。JavaWeb项目在Tomcat下部署有一些不必要的坑需要避免,所以撰写此文方便大家绕过一些坑,以下部署以linux为例
Wesley13 Wesley13
4年前
JavaWeb 调用接口
JavaWeb 如何调用接口CreateTime2018年4月2日19:04:29Author:Marydon1.所需jar包!(https://oscimg.oschina.net/oscnet/0f139
Stella981 Stella981
4年前
Linux下部署springboot项目的步骤及过程
最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上。我是在idea上的项目,所以我就基于此说下过程。(一)打包你的项目1、在pom文件中添加springboot的maven插件 !(https://img2018.cnblogs.com/blog/1
Stella981 Stella981
4年前
ContextLoaderListener ClassNotFoundException
在初学使用maven构建javaWeb的项目的时候,启动tomcat加载时,总是提示如下错误,辛苦一番终于找到解决办法。严重:Errorconfiguringapplicationlistenerofclassorg.springframework.web.context.ContextLoaderListenerJava(https://