0
点赞
收藏
分享

微信扫一扫

【六祎 - Java】GnericServlet实操


1.AServlet.java

阿里云大学课堂课时6  ​​提示信息 - 阿里云全球培训中心 - 官方网站,云生态下的创新人才工场​​ 

package cn.lystudio.web.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;

/*
*
*查看Sevlet接口中的方法
*
*/
public class servlet1 implements Servlet {


/*
*
*它是生命周期方法
*它会在Servlet被销毁之前调用,并且它只会被调用一次 (死之前调用,哈哈哈哈)
*
*/

@Override
public void destroy() {


}



/*
*
* 可以用来获取Servlet的配置信息
*
*/

@Override
public ServletConfig getServletConfig() {

return null;
}




/*
* 获取Servelt信息
*
*/
@Override
public String getServletInfo() {

return "我是一个快乐的Servlet";
}


/*
*
*它是生命周期方法
*它会在Servlet对象创建之后马上执行,并只执行一次!(出生之后,哈哈哈哈)
*
*/

@Override
public void init(ServletConfig servletConfig) throws ServletException {
//servletConfig

}



/*
* 它是生命周期方法
* 它会被调用多次
* 每次处理请求都是在调用这个方法!
*
*
*/
@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
//args=request args1=response

}

}

2.BServlet.java

package cn.lystudio.web.servlet;

import java.io.IOException;

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


/**
*
* 模拟GenericServlet
*
*/
public class BServlet implements Servlet {

private ServletConfig config;

/*
*
* 需要就写,不需要就不写
* */

@Override
public void destroy() {


}


/*
*
*
* 这个方法一定会在init()方法之后被调用
* init()被调用后,本类的成员this.config已经有值了
* */
@Override
public ServletConfig getServletConfig() {

return this.config;
}

/*
*
* 没有用的东西,爱实现不实现
* */

@Override
public String getServletInfo() {

return null;
}



/*
* 由tomcat来调用,
* 并且只调用一次 它是这是这些方法中第一个被调用的,它会在构造器之后马上被调用
*/
@Override
public void init(ServletConfig arg0) throws ServletException {
//把Tomcat传递的servletconfig赋值给本类的一个成员,其实就是把它保保存起来,方便再其他方法中使用!
this.config=config;
init();

}

public void init() {

}

@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException,
IOException {
System.out.println("每次处理请求都会被调用!");
}


public ServletContext getServletContext() {
//获取Sevlet上下文
return config.getServletContext();
}

public String getServletName() {
//获取的是<servlet-name>中的内容
return config.getServletName();
}
public String getInitParameter(String name) {
//通过名称获取指定初始化参数的值
return config.getInitParameter(name);

}
}

3.CServlet.java 

创建一个CServlet.java类,并继承BServlet.java


package cn.lystudio.web.servlet;

import java.io.IOException;

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

//Superclass:继承BServlet
public class CServlet extends BServlet {

public void init() {
System.out.println("汉化");
}

public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
String value= getInitParameter("p1");
}

}

4.DServlet.java

继承GernericServlet类 

package cn.lystudio.web.servlet;

import java.io.IOException;

import javax.servlet.GenericServlet;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class DServlet extends GenericServlet {

public void init()throws ServletException {


}

@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {


}

@Override
public void destroy() {
//可写可不写
System.out.println("destroy()");
}

}

举报

相关推荐

0 条评论