servlet入门
servlet:server applet(运行在服务器端的程序)
概念:servlet就是一个接口,定义了Java类可以被浏览器(tomcat)访问到的规则,将来我们自定义一个类,实现servlet接口,复写servlet里的方法
如何启动方法servlet:
1.创建一个java EE项目
2.定义一个类,实现servlet接口
3.实现接口中的抽象方法
4.配置servlet
servletDemo1.class:
package servlet; import javax.servlet.*; import java.io.IOException; public class ServletDemo1 implements Servlet { @Override public void init(ServletConfig servletConfig) throws ServletException { } @Override public ServletConfig getServletConfig() { return null; } //提供服务的方法 @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("Hello World"); } @Override public String getServletInfo() { return null; } @Override public void destroy() { } }
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"> <!-- 配置servlet路径--> <servlet> <servlet-name>demo</servlet-name> <servlet-class>servlet.ServletDemo1</servlet-class> </servlet> <!-- 配置servlet映射路径--> <servlet-mapping> <servlet-name>demo</servlet-name> <url-pattern>/demo</url-pattern> </servlet-mapping> </web-app>
启动Tomcat:
页面:
控制台:
执行原理:
1.当服务器接收到客户端浏览器的请求后,会解析请求url路径,获取访问servlet的资源路径
2.查找web.xml文件,是否有对应的<url-pattern>标签体内容
3.如果有,则在找到对应的<servlet-class>全类名
4.tomcat会将字节码文件加载进内存,并且创建其对象
5.调用实现了Servlet类中的方法(在这里是service方法)
执行图解: