Maven创建一个Servlet项目(五)中

简介: Maven创建一个Servlet项目(五)

二. Maven 创建一个简单 WEB 项目 如Servlet项目


二.一 创建一个war 类型的项目


打开eclipse, 文件–>新建—>其他–>Maven 选择 Maven Project,跳过原型,进入到下一步:

2019102417374011.png

注意,这个时候 packaging 选择的是 war 类型。


二.二 添加web.xml 文件


新创建好 ServletMaven 的 Web 项目之后,发现项目 pom.xml 文件报错了。


20191024173756343.png


显示错误文字是: web.xml is missing and <failOnMissingWebXml> is set to true


我们就需要添加一个 web.xml 文件了。


点击src/main/ 目录下,发现相比较 Jar项目,多了一个 webapp 文件夹。 其实这个 webapp 文件夹就相当于以前的 WebContent 文件夹。


构建标准的 web 目录结构。


在webapp 目录下,创建 一个 META-INF 文件夹 和 WEB-INF 文件夹。在 WEB-INF 文件夹,需要再添加一个web.xml 文件


web.xml 内容为:


<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://java.sun.com/xml/ns/javaee"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  version="2.5">
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>


20191024173839931.png


然后,再更新 Maven 项目, Alt+F5, 点击确定即可。


2019102417382670.png


20191024173850809.png


也可以利用工具完成 ,不需要手动添加。


选中 ServletMaven 项目, 右键 Java EE Tools——>Generate Deployment Descriptor Stub, 系统便会自动创建 web.xml 文件了。


20191024173924970.png


推荐使用工具完成。


二.三 添加 servlet-api 和jsp-api 的依赖


 <dependencies>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.0</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
    </dependency>
  </dependencies>


二.四 创建 Servlet 类


在 src/main/java 下,创建一个 HelloServlet 类


package com.yjl;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * @author 岳泽霖
 */
public class HelloServlet extends HttpServlet{
  private static final long serialVersionUID = 1L;
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    String message="你好啊,岳泽霖";
    req.setAttribute("message",message);
    req.getRequestDispatcher("/index.jsp").forward(req,resp);
  }
  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    // TODO 自动生成的方法存根
    doGet(req, resp);
  }
}


二.五 在web.xml 下,添加 servlet的映射


<servlet>
    <servlet-name>hello</servlet-name>
    <servlet-class>com.yjl.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>hello</servlet-name>
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>


二.六 在webapp 文件夹下 添加 index.jsp 文件


前台展示 message的值


<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>第一个Web类型的Maven 项目</title>
</head>
<body>
  ${message}
</body>
</html>


二.七 在pom.xml 文件里面配置 tomcat 插件


Maven 项目,可以启动 Tomcat, 然后运行项目,不需要再单独将项目部署到 Tomcat上,进行运行了。 也就是说, Maven 内置了Tomcat 。


既然内置了 Tomcat,那么就可以设置在 Maven 内置的Tomcat上的端口号,项目名等信息了,非常方便。


<build>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <!--tomcat的插件名, tomcat7-maven-plugin, 用的是tomcat7版本-->
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
          <port>8026</port>  <!--tomcat的端口号-->
          <path>/maven</path> <!--tomcat的项目名-->
        </configuration>
      </plugin>
    </plugins>
  </build>


老蝴蝶的 JDK版本是 JDK1.8, 注意版本号, tomcat7 用的是2.2, 不是2.0. 2.0版本的话,可以会版本不匹配。


如果Tomcat启动时报错,注意看一下,是否是版本不匹配导致 的。


相关文章
|
3月前
|
Java 区块链 Maven
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
393 3
|
2月前
|
Java jenkins 应用服务中间件
结合Jenkins与Tomcat,实施Maven项目的自动构建和部署流程。
任何项目构建和部署的自动化流程,总离不开对各个环节精细把控与密切配合。涉及到源代码管理、构建工具、持续集成服务器以及最终的运行时环境的协调。通过上述简洁实用的步骤,可以实现Maven项目从源代码到运行状态的无缝过渡,进而提升软件开发的效率与质量。
223 0
|
Java Maven 开发者
maven项目中官方setting.xml文件
`settings.xml` 是 Maven 的配置文件,用于定义用户或全局级别的构建行为。它包含本地仓库路径、网络代理、服务器认证、仓库镜像及构建配置文件等设置,帮助开发者根据环境定制 Maven 行为,提升构建效率与灵活性。
733 0
|
7月前
|
Java 应用服务中间件 API
Servlet开发流程 (里面有Idea项目添加Tomcat依赖详细教程)
本文详细介绍了Servlet的开发流程,包括在IntelliJ IDEA中添加Tomcat依赖的详细教程。通过上述步骤,开发者可以快速搭建并运行一个基本的Servlet应用,理解并掌握Servlet的开发流程对于Java Web开发至关重要。希望本文能够帮助开发者顺利进行Servlet开发,提高工作效率。
657 78
|
5月前
|
Java 测试技术 项目管理
【JavaEE】从 0 到 1 掌握 Maven 构建 Java 项目核心技巧 解锁 Java 项目高效管理实用实例
本文从Maven基础概念讲起,涵盖安装配置、核心概念(如POM与依赖管理)及优化技巧。结合Java Web项目实例,演示如何用Maven构建和管理项目,解决常见问题,助你高效掌握这一强大工具,提升Java开发与项目管理能力。适合初学者及进阶开发者学习。资源链接:[点此获取](https://pan.quark.cn/s/14fcf913bae6)。
184 6
|
11月前
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
333 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
Java 关系型数据库 MySQL
Maven——创建 Spring Boot项目
Maven 是一个项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,简化了项目的构建和管理过程。其核心功能包括项目构建和依赖管理,支持创建、编译、测试、打包和发布项目。Maven 仓库分为本地仓库和远程仓库,远程仓库包括中央仓库、私服和其他公共库。此外,文档还介绍了如何创建第一个 SpringBoot 项目并实现简单的 HTTP 请求响应。
936 1
Maven——创建 Spring Boot项目
|
11月前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
871 8
|
11月前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
1547 3
|
12月前
|
Java API Apache
除了 Maven,还有哪些工具可以管理项目的依赖和版本冲突
除了Maven,常用的项目依赖管理和版本冲突解决工具有Gradle、Ivy、Ant+Ivy、SBT等。这些工具各有特点,适用于不同的开发环境和需求。
938 2

推荐镜像

更多