实现一个Servlet

一:java的三大组件

Servlet,filter,listener

二:实现一个Servlet

  • void init(ServletConfig argo)执行时机:当Servlet实例被创建时候调用,做初始化工作。ServletConfig:Servlet的配置对象,初始化的时候可以进行配置
  • void service(ServletRequest  arg0,ServletResponse arg1)执行时机:当一个请求来请求当前的Servlet的时候被调用,处理当前的Servlet的业务逻辑并把响应返回给浏览器
  • String getServletinfo():获得当前的一些属性信息
  • void destroy()执行时机:是Servlet的实例对象被销毁的时候调用,做一些收尾或清理工作

ServletConfig getServletConfig():获得ServletConfig的配置对象                                                                       

三:写一个Servlet代码

1.创建一个类继承HTTPServlet或者Servlet接口(建议使用Servlet接口)

public class HttpServletDemo extends HttpServlet {


@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("doGet方法被调用");
resp.getOutputStream().write("<font color='red'>hello Loanon</font>".getBytes());


}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("doPost方法被调用");
doGet(req, resp);

}




接口:

package com.r1.servlet;


import java.io.IOException;


import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;


public class ServletDemo implements Servlet {




@Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
return null;
}




public void init(ServletConfig arg0) throws ServletException {
System.out.println("servlet初始化");


}


@Override
public void service(ServletRequest request , ServletResponse response) throws ServletException, IOException {
response.getOutputStream().write("<font color='blue'>hello Servlet1234</font>".getBytes());


}


}

2.重写Servlet的doget和dopost方法

3配置web.xml

 <servlet>
    <servlet-name>helloServlet</servlet-name>//随便写,但是要和下面的对应一样
    <servlet-class>com.r1.servlet.ServletDemo</servlet-class>//具体的类路径
  </servlet>
  <servlet-mapping>

    <servlet-name>helloServlet</servlet-name>//和上面的名字一样

    <url-pattern>/hello</url-pattern>//浏览器输入的域名
  </servlet-mapping>

猜你喜欢

转载自blog.csdn.net/qq_39093474/article/details/80483292