目录
一、Servlet简介
1.Servlet时sun公司开发动态web的一门技术
2.Servlet是一个接口
3.编写一个Java类实现接口,部署到web服务器中
4.实现了Servlet类的程序就叫Servlet
二、Servlet继承关系及方法
1.继承关系
sun公司提供了一个类GenericServlet实现了Servlet接口并且还提供了另一个HttpServlet类去继承了GenericServlet类。因此我们可以直接编写一个类去继承HttpServlet类即可。
2.方法
①.Servlet中提供了以下方法:
init(ServletConfig var1):初始化方法
getServletConfig():获取Servlet配置
service(ServletRequest var1,ServletResponse var2):服务
getServletInfo():获取Servlet信息
destory():销毁
②.GenericServlet类实现Servlet类但并没有真正实现service等方法,仅仅只是拿了过来。
③.HttpServlet类继承GenericServlet类重写了service方法,并提供了doGet()、doPost()和doDelete()等方法。因此我们编写的类继承HttpServlet类之后只需要根据需要重写doGet()或者doPost()等方法即可。
三、简单的Servlet程序
1.新建一个Maven项目
2.删掉src目录,方便以后创建子项目【可不删,根据具体需求】
3.在pom.xml中引入servlet、jsp依赖
<dependencies>
<!--导入servlet依赖-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
<!--导入jsp依赖-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
</dependency>
</dependencies>
4.创建maven子项目
5.maven父子项目关系理解
①.父pom.xml中:
<modules>
<module>01_servlet</module>
</modules>
②.子pom.xml中:
<parent>
<artifactId>maven-01-servlet</artifactId>
<groupId>com.kuang</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
③.父项目中的jar包可以在子项目中使用
6.补充子项目目录结构
在main目录下创建java文件夹和resources文件夹,并将其分别标记为Sources Root和Resources Root
7.编写Servlet程序
①.编写HelloServlet类继承HttpServlet类
②.在helloServlet类中重写doGet()或doPost()方法,打印helloServlet
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter writer = resp.getWriter();
writer.println("helloServlet");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
}
③.在web.xml中注册servlet,实现servlet的映射
为什么需要映射:因为我们写的是java程序,但是要通过浏览器访问;而浏览器需要连接web服务器,所以我们要在web服务器中注册我们写的servlet,就需要给他一个浏览器能够访问的路径。
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.kuang.servlet.HelloServlet</servlet-class>
</servlet>
<!--servlet的映射路径-->
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/helloServlet</url-pattern>
</servlet-mapping>
8.配置TomCat
9.运行结果