ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

servlet 周期 的应用

2021-09-16 18:59:05  阅读:112  来源: 互联网

标签:周期 TODO System 应用 println servlet public out


了解sevlet的周期历程

构造方法(创建servlet 对象执行)创建该servlet的对象,在执行init方法加载数据最后
执行service方法当前servlet处于运行状态。
Servlet 初始化后调用 init () 方法。
Servlet 调用 service() 方法来处理客户端的请求。
Servlet 销毁前调用 destroy() 方法 长时间未访问。
getServletCong方法(获得serverweb.xml文件)
最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。

创建第一个oneservlet的类 采用接口。

public class OneServlet implements Servlet  {

定义了五个方法

 public fourServlect() {
        super();
        // TODO Auto-generated constructor stub
    }
//构造方法一alt+/一键生成

@Override
	public void destroy() {
		// dectroy 删除select,cpu释放内存
		
		System.err.println("当servlet不在实现该方法");
	}

@Override
	public ServletConfig getServletConfig() {
		// TODO Auto-generated method stub
		//获得 get  servlet 小程序  confign 设置信息
		//getServletConfig()作用用于servlet在/web/html文件中设置信息
		return null;
	}

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

	@Override
	public void init(ServletConfig arg0) throws ServletException {
		// TODO Auto-generated method stub
		//初始数据
		System.out.println("加载信........息");
		System.out.println("说明浏览器每一次访问servlet就是第一次访问创建同一个对象");
		System.out.println("加载信息。。。。。2");
		
	}
@Override
	public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
		// TODO Auto-generated method stub
		//等待浏览器访问
		System.out.println("servlect处于运行状态");
		
	}
	

注册页面

<?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_4_0.xsd" id="WebApp_ID" version="4.0">
  <display-name>Day02jsp</display-name>
  <welcome-file-list>
   <!--  <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file> -->
    <welcome-file>index.jsp</welcome-file>
    <!-- <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file> -->
  </welcome-file-list>
  
  <!-- 注册oneServlet -->
  <!--  第一部分 注册OneServlet-->
  <servlet>
  
  <!--  srvlet 增加名字  -->
  <servlet-name>OneServlet</servlet-name>
  <!--注册servlet地址  -->
  <servlet-class>com.servlet.OneServlet</servlet-class>
  <load-on-startup>5</load-on-startup>
  </servlet>
  
  
  <!--第二部分 :设置一个浏览器可以访问的servlet的地址 -->
  <servlet-mapping>
  <servlet-name>OneServlet</servlet-name>
  <!--设置浏览器地址  -->
  <url-pattern>/aa</url-pattern>
  <!-- 设置地址访问一定加/asd -->
  </servlet-mapping>
  
  
  
  <!-- 注册twoServlet -->
  <!--  第一部分 注册OneServlet-->
  <servlet>
  <!--  srvlet 增加名字  -->
  <servlet-name>TwoServlet</servlet-name>
  <!--注册servlet地址  -->
  <servlet-class>com.servlet.TwoServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
  </servlet>
  
  
  <!--第二部分 :设置一个浏览器可以访问的servlet的地址 -->
  <servlet-mapping>
  <servlet-name>TwoServlet</servlet-name>
  <!--设置浏览器地址  -->
  <url-pattern>/*bb</url-pattern>
  <!-- 设置地址访问一定加/asd -->
  </servlet-mapping>
  
  
   <!-- 注册treeServlet -->
  <!--  第一部分 注册OneServlet-->
  <servlet>
  <!--  srvlet 增加名字  -->
  <servlet-name>Three</servlet-name>
  <!--注册servlet地址  -->
  <servlet-class>com.servlet.Three</servlet-class>
  <load-on-startup>3</load-on-startup>
  </servlet>
  
  
  <!--第二部分 :设置一个浏览器可以访问的servlet的地址 -->
  <servlet-mapping>
  <servlet-name>Three</servlet-name>
  <!--设置浏览器地址  -->
  <!--  *:表示0个或任意字符-->
  <url-pattern>/cc</url-pattern>
  <!-- 设置地址访问一定加/asd -->
  </servlet-mapping>
  
  
</web-app>

创建第二个twoservlet的类 采用继承。

public class TwoServlet  extends GenericServlet {
public TwoServlet() {
	// TODO Auto-generated constructor stub
	System.out.println("Twoservlet 在运行 过程中哦哦哦");
}
	@Override
	public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("当前servlet处于运行");
		
	}

创建第三个treeservlet的类 采用继承。

public class Three  extends HttpServlet{
	//http:网络协议 TCP/LP 被动协议 需要用户去访问服务器 ,服务器材会发送数据。
	//有四种发送数据方式:get 发送请求  post发送请求 

创建

	
	public Three() {
		// TODO Auto-generated constructor stub
		System.out.println("tree对象在创建");
	}
	//UDP:主动协议,不管用户要不要 ,服务器都会发送数据
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
	System.out.println("我收到浏览器的get请求访问  get---doget");
	/*
	 * System.out.println("http://localhost:8080/Day02jsp/");
	 * System.out.println("get 如果浏览器发送多个数据以后与字符连接");
	 * System.out.println("登录功能一律不使用post的请求,"); System.out.println("get post ");
	 * System.out.println("get请求数据拼接在地址上,地址长度有限 ,lkb=1024 一个字母二个字节 是2个字母");
	 * System.out.println("post 数据是不受限制的 get获得");
	 */
	}
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("我收到浏览器的post请求访问  post----dopost");
	}

第四个forservlet的类  采用快捷键。

@WebServlet(urlPatterns="/xxxx")
public class fourServlect extends HttpServlet {
	private static final long serialVersionUID = 1L;
       //定义一个变量
package com.servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class fourServlect
 * @xxxxx:java注解用少量
 */

@WebServlet(urlPatterns="/xxxx")
public class fourServlect extends HttpServlet {
	private static final long serialVersionUID = 1L;
       //定义一个变量
	  int countt=0;
	  String hdrt="L LOVE YOU";
	 
	
    /**
     * @see HttpServlet#HttpServlet()
     */
    public fourServlect() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		countt++;
		response.getWriter().append("Served at:get  countt"+countt+"l love you "+countt+"");
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.getWriter().append("Served at:get ");
	}

}

理解http地址的/*

 在web.xml文件中,以下语法用于定义映射: 

   l.以”/’开头和以”/*”结尾的是用来做路径映射的。

   2.以前缀”*.”开头的是用来做扩展映射的。 

   3. “/” 是用来定义default servlet映射的。 

   4. 剩下的都是用来定义详细映射的。比如: /aa/bb/cc.action 

标签:周期,TODO,System,应用,println,servlet,public,out
来源: https://blog.csdn.net/qq_56248592/article/details/120334908

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有