本文转载自 https://segmentfault.com/a/1190000007088964

1. 新建一个 Web Application 项目

  1. 打开 IntelliJ,选择新建项目:

  2. 左边栏选择 Java Enterprise,右侧勾选 Web Application,具体如下:

  3. 输入项目名:

2. 基本配置

2.1 配置输出目录和库目录

  1. project/web/WEB-INF 目录下新建两个目录:libclasses,前者用来保存后期引入的 jar 包,后者用于存放编译输出的文件:

  2. 点击右上角的方块按钮:

  3. Modules > Paths 中设置编译输出目录为之前创建的 classes 文件夹,如下图所示:

  4. Modules > Dependencies 中点击下方加号按钮,将之前创建的 lib 文件夹添加进库目录(之后选择 Jar Directory):

  5. Artifacts > Output Layout 中,将右侧 Available Elements 中的 lib 文件夹加入到左侧,使得 lib 中的文件会在编译的时候输出:

2.2 添加部署目录

  1. Tomcat 目录下有一个 webapps 文件夹,是服务启动的根目录,类似于 Apache 的 htdocs。当启动 Tomcat 服务时,访问 localhost:8080 相当于访问 webapps 目录;

  2. 如果我们把项目输出的文件放到 webapps 中的项目文件夹中(如:/myproject),就可以通过访问 localhost:8080/myproject 的方式访问到这一项目;

  3. IntelliJ 默认的部署目录是当前工程目录下的 out 文件夹。即在写好代码并点击右上角的运行按钮后,IntelliJ 会将项目文件输出到当前项目目录下的 out 文件夹而不是 webapps 中,也就意味着,此时如果采用手动启动 Tomcat 服务的方式,是无法通过访问 localhost:8080/myproject 访问项目的;

这里修改 Artifacts > Output Directorywebapps/myproject

2.3 端口和 Tomcat 设定

  1. 点击右上角的 Edit Configurations:

  2. 设定启动端口,这里可以取消勾选 Open Brwoser After launch 选项(是否在点击运行按钮后自动打开浏览器并访问项目)

  3. 点击 Configure 按钮,设置 Tomcat 位置为安装的 Tomcat 路径。如果在新建项目界面时已经设定了 Tomcat,则这里无需再设置:

  4. deployment 中设定项目 Context:

如这里设定为 /test 则点击运行按钮后,访问 localhost:8080/test 即可访问该项目。

3. 备忘

  1. 如果使用 IntelliJ 的运行按钮启动的 Tomcat,且没有修改默认端口(即和 Tomcat 默认端口 8080 一致),也没有修改项目 Context(仍为 /),则可能会使得设置的 servlet 无法生效,即在访问设定的 url-pattern 时提示 404 错误。解决方法是在 IntelliJ 中修改默认端口号、修改默认 Context,或是在修改了部署目录后,使用手动方式启动 Tomcat,并访问该项目;

  2. Servlet 的设置方式在 Servlet 3.0 之后除了修改 web.xml 文件,还可以以添加 servlet 注解的方式设置:

  3. 查看 Servlet 版本的方式是解压 Tomcat 目录下的 lib/servlet-api.jar,并查看解压后的 META-INF/MANIFEST.MF 文件:

  4. 手动启动 Tomcat 的方法:
    cd you/path/to/tomcat 然后执行 ./startup.sh 或是 ./catalina.sh start。当然,需要给这两个文件以执行权限:sudo chmod a+x catalina.sh startup.sh

  5. 在某一项目中进行全局设置:File > Other Setting > DefaultSetting

4. 参考

    1. intellij idea 创建servlet的时候如何自动更新web.xml文件 - 知乎

    2. IntelliJ IDEA 14.x 与 Tomcat 集成,并运行Web项目 - 推酷

    3. java web开发中,如何查看JSP和Servlet版本 - 163博客

    4. Mac OS X上IntelliJ IDEA 13与Tomcat 8的Java Web开发环境搭建 - 博客园

    5. javaweb学习总结(五)——Servlet开发(一) - 博客园

    6. Intellij IDEA的基本使用 - CSDN

《转载》IntelliJ 2016.2 IDEA 中进行 Java Web 项目开发配置的更多相关文章

  1. idea中的java web项目(添加jar包介绍)和java maven web项目目录结构

    java web项目 web项目下web根目录名称是可以更改的 idea中新建java web项目,默认src为Sources Root,当然也可以手动改,在Sources Root下右键只能新建Pa ...

  2. 使用MyEclipse搭建java Web项目开发

    转自:http://blog.csdn.net/jiuqiyuliang/article/details/36875217 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成 ...

  3. JAVA WEB项目开发案例精粹

    http://www.blogjava.net/zongbao/archive/2012/07/24/383884.htmlJAVA WEB项目开发案例精粹.pdf main Alt + / => ...

  4. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  5. 【java项目实战】一步步教你使用MyEclipse搭建java Web项目开发环境(一)

    首先.在開始搭建MyEclipse的开发环境之前.还有三步工具的安装须要完毕,仅仅要在安装配置成功之后才干够进入以下的java Web项目开发环境的搭建. 1.安装工具 第一步,下载并安装JDK,到官 ...

  6. 使用IntelliJ IDEA 15和Maven创建Java Web项目(转)

    1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工 ...

  7. 使用IntelliJ IDEA 15和Maven创建Java Web项目(转)

    转自:https://blog.csdn.net/myarrow/article/details/50824793 1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和 ...

  8. IntelliJ IDEA启动一个普通的java web项目的配置

    文:朱季谦 这是我很久以前刚开始用IntelliJ IDEA时记录的笔记,正好赶上最近离职了,可以有比较多的时间把以前的记录整理一下,可以让刚接触到IntelliJ IDEA的童鞋学习如何在Intel ...

  9. maven3在eclipse3.4.2中创建java web项目

    学习maven时参考的一些的博客地址:http://www.cnblogs.com/fnng/archive/2011/12/16/2290587.htmlhttp://sarin.iteye.com ...

随机推荐

  1. 第三百二十二节,web爬虫,requests请求

    第三百二十二节,web爬虫,requests请求 requests请求,就是用yhthon的requests模块模拟浏览器请求,返回html源码 模拟浏览器请求有两种,一种是不需要用户登录或者验证的请 ...

  2. ping失败的结果分析

    ①Request timed out 这是大家经常碰到的提示信息,很多文章中说这是对方机器置了过滤ICMP数据包,从上面工作过程来看,这是不完全正确的,至少有下几种情况. a. 对方已关机,或者网络上 ...

  3. jq dom不存在时绑定事件

    $( "a.offsite" ).live( "click", function() { alert( "Goodbye!" ); // j ...

  4. Spring集成线程池

    自己在程序中手动New很容易造成线程滥用,创建线程也是比较消耗资源的操作,所以建议如果有此需求,将线程池统一交给Spring框架进行管理. 如下: <!--Spring 集成线程池,不允许自己开 ...

  5. php 字符串 以 开头 以结尾 startWith endWith

    From: http://www.shipingzhong.cn/node/1217 //第一个是原串,第二个是 部份串function startWith($str, $needle) { retu ...

  6. 阿里云Centos6.9安装图形化界面

    yum -y groupinstall "X Window System" "Chinese Support" "Desktop"

  7. js 历史

    原文http://javascript.ruanyifeng.com/introduction/history.html JavaScript的诞生 JavaScript 因为互联网而生,紧随着浏览器 ...

  8. AsyncTask异步类的简单操作

    package com.example.day9; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; im ...

  9. 3. beeGo 自己写Controller 和 请求数据处理

    Controller Controller等同于Django里的view,处理逻辑都是在Controller里面完成的,下面就写一个最简单的Controller. 我们在写自己的controller的 ...

  10. Tensorflow同时加载使用多个模型

    在Tensorflow中,所有操作对象都包装到相应的Session中的,所以想要使用不同的模型就需要将这些模型加载到不同的Session中并在使用的时候申明是哪个Session,从而避免由于Sessi ...