1、使用idea新建一个空的maven项目,并删除其中的src文件夹,因为后期是要在这个新的项目下建立各个模块,并不需要原来的src文件夹。
2、在总的项目下使用maven引入servlet和jsp的jar包,可在(https://mvnrepository.com/)中搜索servlet和jsp,找到对应的jar包,在总项目中的配置文件pom.xml中添加dependencies标签对,然后将以下代码复制到该标签对,然后maven会自动将这两个jar包及其依赖jar包导入到项目中(如果idea右下角有提示,问你是否要自动导读(Enable auto import),选择自动导入)。
导入成功后在项目中能看到如下:
3、在该项目下创建子模块(module),子模块用webapp模板来创建,注意子模块和父模块之间的关系。
-
创建子模块
-
子模块中的pom.xml有如下(如果没有可以手动添加到子模块中的pom.xml)
<parent>
<groupId>com.chong</groupId>
<artifactId>demo</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
- 父模块的pom.xml中有如下部分
<modules>
<module>servlet</module>
</modules>
4、优化模板中的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"
metadata-complete="true"
>
</web-app>
5、在main下面创建两个文件夹,一个命名java,另一个resources,java文件夹标记为根目录,resources文件夹标记为资源目录。
6、配置Tomcat,注意配置的时候,要修改下映射(例如这里修改的 “/s1”),这样比较方便
7、在java中创建包,然后在自己的包内创建一个servlet,重写doget和dopost方法,并写入一些信息进行测试。
关于重写:创建类并继承了HttpServlet之后,在idea中按快捷键alt+insert 然后弹出对话框,选中overwirtter,然后选中doGet和doPost方法就可以重写。该类中代码如下:
package com.chong.day34;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class servlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("调用了doGet方法!");
PrintWriter writer = resp.getWriter();
writer.print("HelloServlet!");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
8、在之前修改过的web.xml配置文件中注册servlet,即在里面添加两个标签对和相关信息,如图
其中的servlet-name在两个标签对中都要相同,url-pattern是配置的访问路径,servlet-class就是这个servlet类
9、启动Tomcat,进行测试
然后在s1/后面输入hello就可以访问到刚才写的servlet