JAVAWEB学习一 servlet入门

Servlet是什么?

  Sevlet是一个JAVA类,只不过这个JAVA类是由服务器来调用的。在Servlet中处理来自于浏览器的Http请求(doGet,doPost等等)

Servlet用来做什么?

  最简单的Servlet用来传递数据,并且产生响应。

Interface Servlet

     在Servlet内的主要方法:

void destroy() 销毁所有的资源
ServletConfig getServletConfig() 初始化(数据库的链接等等)
void service(ServletRequest req,ServletResponse res) 用service方法来传递“请求”和“响应”对象给实力的处理方法)

使用一个class实现Servlet接口:

package com.cs.helloworld;
import java.io.IOException;
import java.util.Enumeration;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class helloServlet implements Servlet {
    @Override
    public void destroy() {
        System.out.println("destroy");
    }
    @Override
    public ServletConfig getServletConfig() {
        System.out.println("getServletConfig");
        return null;
    }
    @Override
    public String getServletInfo() {
        System.out.println("getServletInfo");
        return null;
    }
    @Override
    public void init(ServletConfig Config) throws ServletException {
        System.out.println("init");
        
        //当前WEB应用的大管家。可以从中获取各个方面的信息
        ServletContext content = Config.getServletContext();
    
        //路径
        String path = content.getRealPath("\Day_01\error.jsp");
        System.out.println(path);
        
        //WEB应用的名称  getContentPath()
        //获取WEB应用的输入流 getResourceAsStream(String PATH)
        
        Enumeration<String> enu = content.getInitParameterNames();
        while(enu.hasMoreElements()){
            String pr = enu.nextElement();
            String pr_value = content.getInitParameter(pr);
            System.out.println("参数名称:"+pr+"参数值:"+pr_value);
        }
        
//        Enumeration<String> enume = Config.getInitParameterNames();
//        while(enume.hasMoreElements()){
//            System.out.println(enume.nextElement());
//        }
                
    }
    @Override
    public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
        System.out.println("service");
    }
    public helloServlet(){
        System.out.println("helloServlet constructor");
    }
}

从这里边可以看出来init()方法被调用一次,多次刷新,会打印多次service,课件service()方法被多次调用、还可以获取在web.xml中配置的参数。

入门易,精通难
原文地址:https://www.cnblogs.com/chenshun-2016/p/6013717.html