1、配置代码
<!--添加Servlet和JSP依赖-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version> <!--这个版本需要根据你库里面的jar实际版本配置,见下图。最新版本为4.0.1-->
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version> <!--这个版本需要根据你库里面的jar实际版本配置,见下图。-->
<scope>provided</scope>
</dependency>
</dependencies>
将dependency配置中的版本改为你的最新版本即可,jsp-api包同理。
配置完成后,IDEA中显示成功
创建一个子模块(web项目)
创建完成后可以看到
以及右侧也可以看到
2、关于Maven父项目的理解
- 父项目中会有
<modules>
<module>severlet-01</module>
</modules>
- 子项目中会有
<parent>
<artifactId>javaweb-02-servelt</artifactId>
<groupId>com.yangke</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
其中,父项目中的java,子项目可以使用,即
son extends father
3、将Maven环境搭建完整,在main文件下创建java和resources目录,并把java目录表记为源码目录,把resources文件变成资源目录。
以java目录为例,resources文件同理
4、编写一个servlet程序
1. 编写一个普通类
2. 实现servlet接口,这里直接继承HttpServlet(还有一个默认类是GenericServlet)
package com.keke.servlet;
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 HelloServlet extends HttpServlet {
//重写方法:重写doGet()和doPost。可以相互调用
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter writer = resp.getWriter();//响应流
writer.print("Hello,Servlet");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}
5、编写映射
上面写的是Java程序,但是要通过浏览器访问,而浏览器需要连接web服务,所以需要在web服务中注册我们写的servlet,还需要给他一个浏览器能访问的途径。
<!--注册servlet-->
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>com.keke.servlet.HelloServlet</servlet-class>
</servlet>
<!--servlet请求路径-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
6、配置Tomcat
7、启动测试
点击运行Tomcat
会出现target包,即我们建立的网站。
运行成功