在平时写项目学习java的时候,有没有这么一种情况:我们一开始建立了一个普通的java项目,但是随着我们编码的进行,发现项目需要部署到Tomcat服务器上运行测试。此时有两种解决方案:【1】创建一个web项目,从0到1重新编码,但是显然不是我们想要的方案,我写了好几天的代码,突然重头到尾再写一遍?呜呜呜呜呜,我才不要呢!【2】将当前的java项目改造成一个web项目,这也是本文的出发点。
注意:maven的java项目改造成web项目,只需在pom文件中将打包方式由jar改为war即可。而普通的java项目稍稍有点复杂,详见如下:
--改造五部曲:
第一步:点击Project Structure
第二步:添加web模块
第三步:配置web.xml
第四步:配置web模块位置
第五步:修改webapp目录结构
第一步:点击Project Structure
![](https://pic4.zhimg.com/80/v2-77973e0d646bacdd99b72010a5ecc4d7_720w.jpg)
第二步:添加web模块
![](https://pic2.zhimg.com/80/v2-ff1e73c27554efeb2f7d8f20380404fd_720w.jpg)
第三步:配置web.xml
![](https://pic1.zhimg.com/80/v2-56efc1b166959fab3430139e14200f64_720w.jpg)
第四步:配置web模块位置
![](https://pic2.zhimg.com/80/v2-eb44505956595589ba0e9ee7c2edf8b1_720w.jpg)
第五步:修改webapp目录结构
经过上述步骤操作后,项目结构如下:
![](https://pic4.zhimg.com/80/v2-b9b934b310deb38550e5089969c53f87_720w.jpg)
可以发现,webapp和WEB-INF目录重叠在一起了,这是idea默认的风格,如果目录没有文件,那么就会向下整合,并以两个目录的名作为新的目录名。
此时我们需要将webapp.WEB-INF改名为webapp。
接着在webapp目录下创建WEB-INF目录。
![](https://pic1.zhimg.com/80/v2-0c1f0653de7dd7808728b75a5c5159f8_720w.jpg)
![](https://pic2.zhimg.com/80/v2-877cc20795e3dbbbdfb7da7d7908ae01_720w.jpg)
接着在webapp目录下创建一个jsp页面,防止webapp目录和WEB-INF目录又重叠在一起。
![](https://pic3.zhimg.com/80/v2-b24daa0067a0e50d8ac68ebb5c2f339a_720w.jpg)
最后将WEB-INF目录拖到webapp目录下,,再把web.xml文件拖到WEB-INF目录下,这就得到一个完整的web项目了,如下:
![](https://pic4.zhimg.com/80/v2-af3074ee21e0ca36addd6da2859d78a3_720w.jpg)
原文链接:https://zhuanlan.zhihu.com/p/100095211