vlambda博客
学习文章列表

[IDEA] 搭建传统 Java Web 项目实例

1. 创建项目,相当于 workspace,
选择 Empty Project,
设置项目名称和项目路径,
2. 配置 Tomcat,下载地址,
  
    
    
  
https://tomcat.apache.org/
进入 Edit Configurations,
[IDEA] 搭建传统 Java Web 项目实例
找到 Tomcat Server,
[IDEA] 搭建传统 Java Web 项目实例
配置参数,
[IDEA] 搭建传统 Java Web 项目实例
3. 新建 Module,相当于 project, 
[IDEA] 搭建传统 Java Web 项目实例
选择 Web Application,
[IDEA] 搭建传统 Java Web 项目实例
设置模块名称、根路径和模块文件路径,
模块文件路径用来存放 iml 文件,
在 web/WEB-INF 下,
创建 classes 和 lib 目录,
进入 Project Structure,
[IDEA] 搭建传统 Java Web 项目实例
配置 Compiler output,
定位到新建的 classes,
[IDEA] 搭建传统 Java Web 项目实例
第一种添加 lib 方法,
点中 lib 右键,
[IDEA] 搭建传统 Java Web 项目实例
选择 Add as Library...,
[IDEA] 搭建传统 Java Web 项目实例
设置参数;
第二种添加 lib 方法,
[IDEA] 搭建传统 Java Web 项目实例
选择 Java,
[IDEA] 搭建传统 Java Web 项目实例
选择 lib 路径,
[IDEA] 搭建传统 Java Web 项目实例
选择模块;
第三种添加 lib 方法,
[IDEA] 搭建传统 Java Web 项目实例
选择 JARs or directories...,
[IDEA] 搭建传统 Java Web 项目实例
选择 lib 路径;
第四种添加 lib 方法,
不创建 lib 目录,
[IDEA] 搭建传统 Java Web 项目实例
选择 Java,选择外部路径,
[IDEA] 搭建传统 Java Web 项目实例
选择模块,
[IDEA] 搭建传统 Java Web 项目实例
需要执行 Put into Output Root;
第五种添加 lib 方法,
[IDEA] 搭建传统 Java Web 项目实例
具体添加方法与方法二、四基本相同,
可供所有 project 内 module 使用;
另外还可以单独添加外部 jar,
[IDEA] 搭建传统 Java Web 项目实例
选择 JARs or directories...,
选择外部 jar,
需要执行 Put in to Output Root,
可能会出现提示,
[IDEA] 搭建传统 Java Web 项目实例
可以忽略,没有影响,
设置发布方式,可以选择发布为 war,
[IDEA] 搭建传统 Java Web 项目实例
将模块添加到 Tomcat,
[IDEA] 搭建传统 Java Web 项目实例
在 Deployment 中添加,
并设置应用上下文,
[IDEA] 搭建传统 Java Web 项目实例
4. 测试,创建 Servlet,
[IDEA] 搭建传统 Java Web 项目实例
设置名称和包路径,
自动生成 HelloServlet,
  
    
    
  
package demo.controller;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;
public class HelloServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
} }
简单完善,
  
    
    
  
public class HelloServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); }
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.getWriter().println("Hello world!"); } }
配置自动添加到 web.xml,
  
    
    
  
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>demo.controller.HelloServlet</servlet-class> </servlet> </web-app>
需要补充 servlet-mapping,
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>demo.HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping></web-app>
启动 Tomcat,
访问均正常。
  
    
    
  
http://localhost:8080/demo http://localhost:8080/demo/hello