JavaWeb基础 继承GenericServlet 简单示例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb基础 继承GenericServlet 简单示例相关的知识,希望对你有一定的参考价值。

礼悟:
     好好学习多思考,尊师重道存感恩。叶见寻根三二一,江河湖海同一体。
          虚怀若谷良心主,愿行无悔给最苦。读书锻炼强身心,诚劝且行且珍惜。




       javaEE:7           
       javaSE:1.8
          JSTL:1.2.2  
      server:tomcat 8.5
    explorer:Firefox        
             os:windows7 x64
            ide:MyEclipse 2017



web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
		 xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
		 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
		 id="WebApp_ID" 
	 	 version="3.1">

	<servlet>
		<servlet-name>myGenericServlet</servlet-name>
		<servlet-class>jizuiku.web.servlet.MyGenericServlet</servlet-class><!-- 执行的是这个类 -->
		
		<init-param>
			<param-name>minNum</param-name>
			<param-value>10</param-value>
		</init-param>
		
		<init-param>
			<param-name>maxNum</param-name>
			<param-value>100</param-value>
		</init-param>
	</servlet>

	<servlet-mapping>
		<servlet-name>myGenericServlet</servlet-name> <!-- 两个name 相应就好 -->
		<url-pattern>/MyGenericServletDemo</url-pattern><!-- 访问的是这个路径 -->
	</servlet-mapping>

</web-app>

 

继承GenericServlet的类的代码

package jizuiku.web.servlet;

import java.io.IOException;

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

/**
 * 
 * 
 * @author 给最苦
 * @version V17.10.20
 */
public class MyGenericServlet extends GenericServlet{


	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Override
	public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
		
		System.out.println("执行service()...");

	}
	
	// 根据源代码可以推出 ,要重写的方法一定是 init()
	@Override
	public void init() throws ServletException {
		// TODO Auto-generated method stub
		System.out.println("你好,执行初始化程序");
	}
	
	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		System.out.println("执行destroy()...");
	}

}

 

效果
技术分享

  如上浏览器访问指定页面 一次,控制台输出信息发生如下变化

技术分享

 

扩展
  为什么要重写 无参数的init()方法?请看源代码

    /**
     * Called by the servlet container to indicate to a servlet that the servlet
     * is being placed into service. See {@link Servlet#init}.
     * <p>
     * This implementation stores the {@link ServletConfig} object it receives
     * from the servlet container for later use. When overriding this form of
     * the method, call <code>super.init(config)</code>.
     *
     * @param config
     *            the <code>ServletConfig</code> object that contains
     *            configuration information for this servlet
     * @exception ServletException
     *                if an exception occurs that interrupts the servlet‘s
     *                normal operation
     * @see UnavailableException
     */
    @Override
    public void init(ServletConfig config) throws ServletException {
        this.config = config;
        this.init();
    }

 

   关于serialVersionUID的简单介绍

网址:http://www.cnblogs.com/btdxqz/p/6806372.html

 

 


学习资源:itcast和itheima视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。
















以上是关于JavaWeb基础 继承GenericServlet 简单示例的主要内容,如果未能解决你的问题,请参考以下文章

18-从零玩转JavaWeb-继承思想

javaWeb基础之Servlet

浅析 Servlet 的三种创建方法

Servlet基础

多线程基础

Java Web