1.Servlet简介
- Servlet是sun公司开发动态Web的一门技术
- sun公司在这些API中提供了一个接口叫做:Servlet,如果那你想开发一个Servlet程序,只需完成两个步骤:
- 编写一个类,实现Servlet接口
- 把开发好的Java类部署到web服务器中
把实现了Servlet接口的Java程序叫做,Servlet
2.HelloServlet
Servlet接口在Sun公司有两个实现类:HttpServlet、GenericServlet
2.1构建一个Maven项目
删掉里面的src目录,以后我们的学习就在这个项目里建立Moudle
这个空的工程就是Maven主工程
然后在Demo03下面新建一个WebApp项目,名称为javaweb
3.关于Maven父子工程的理解
在父项目中会有:
<modules>
<module>javaweb</module>
</modules>
子项目中会有:
<parent>
<artifactId>Demo03</artifactId>
<groupId>com.demo</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
父项目中的java子项目可以直接使用
son extends father
4.Maven环境优化
- 修改web.xml为最新的
- 将src/main/webapp/WEB-INF/web.xml里的内容替换为Tomcat最新版的内容
- 将Maven的结构搭建完整
- 在main目录新建java跟resources目录
5.编写一个Servlet程序
5.1编写一个普通类
5.2实现一个Servlet接口,这里我们直接继承HttpServlet
对GET,POST两个接口进行重写
(由于GET或者POST只是请求实现的不同的方式,可以相互调用,业务逻辑都一样)
package com.xf2021.www;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.ServletOutputStream;
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 {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
ServletInputStream inputStream = req.getInputStream();
//ServletOutputStream outputStream = resp.getOutputStream();
PrintWriter writer = resp.getWriter(); //响应流
writer.println("Hello Servlet" );
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doPost(req, resp);
}
}
5.3编写Servlet的映射
为是很么需要映射?
我们写的是JAVA程序,但是要通过浏览器访问,浏览器需要连接Web服务器,所以我们需要在Web服务中心注册我们写的Servlet,还需给他一个浏览器能够访问的路径
<?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">
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
<!--注册Servlet-->
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>com.xf2021.www.HelloServlet</servlet-class>
</servlet>
<!--注册Servlet请求路径-->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
5.4配置Tomcat
详情请查看上一章,下方传送门
注意:配置时请注意项目发布的路径
6.启动测试
Comments | NOTHING