赞
踩
Maven 项目创建完后,会自动生成一个 pom.xml 的文件
我们需要在 pom.xml 中引入 Servlet API 所需要的 jar 包
下面的 jar 包我直接复制在这里,或者你也可以跟着下面的步骤自己查询
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
引入 Servlet API 所需要的 jar 包的步骤
在中央仓库 https://mvnrepository.com/ 中直接搜索 Servlet,一般第一个就是
选择版本 3.1.0
Servlet 版本要和 Tomcat 对应
如果我们使用 Tomcat 8.5,那么就需要使用 Servlet 3.1.0
可以在 http://tomcat.apache.org/whichversion.html 查询版本对应关系
修改后的 pom.xml:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>hello_servlet</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>8</maven.compiler.source> <maven.compiler.target>8</maven.compiler.target> </properties> <dependencies> <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> </dependencies> </project>
当项目创建好之后,IDEA 会自动帮我们创建好一些目录;如:
但这些目录还不够,我们还需要创建一些其他的目录/文件:
(1)创建 webapp 目录
(2)创建 WEB-INF 目录
(3)创建 web.xml 文件
(4)编写 web.xml 文件
往 web.xml 文件中拷贝如下代码:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>
在 java 目录中创建 HelloServlet 类,(直接在类中写 doGet 选择会出现如下代码,再修改一些代码,这是比较快捷的方式)
import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/hello") public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 自动生成的调用父类的代码删除 //super.doGet(req, resp); // 这个代码是打印在 Tomcat 的控制台上 System.out.println("hello world"); // 这个打印是打印在响应报文上,显示到页面上 // 就是把 hello world 字符串作为响应报文的 body 了, 浏览器就会把这个 body 显示在页面上 resp.getWriter().write("hello world"); } }
使用 Maven 打包,打开 Maven 窗口,一般在页面右侧(找不到可以通过 菜单 -> View -> Tool Window -> Maven 打开)
(1)Maven->s->package
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。