zoukankan      html  css  js  c++  java
  • Servlet

    1 涉及的技术知识点
      1)Servlet 
      2)Request请求对象
      3)Response响应对象

    2 什么是Servlet?
      1)Servlet是Sun公司制定的一套技术标准,包含与Web应用相关的一系列接口,是Web应用实现方式的宏观解决方案。而具体的Servlet容器负责提供标准的实现。Tomcat(Web应用服务器,Servelt容器)实现了这些标准。
      2)Servlet作为服务器端的一个组件,它的本意是“服务器端的小程序”。Servlet的实例对象由Servlet容器负责创建;Servlet的方法由容器在特定情况下调用;Servlet容器会在Web应用卸载时销毁Servlet对象的实例。
      3)简单可以理解为:Servlet就是用来处理客户端的请求的.

    3 Servlet开发规则

    1)实际编码通过继承HttpServlet来完成Servlet的开发

    2)Servlet类的相关方法

      doGet   Servlet中用于处理get请求的方法

      doPost  Servlet中用于处理post请求的方法

      service

        ①在Servlet的顶层实现中,在service方法中调用的具体的doGet或者是doPost

        ② 在实际开发Servlet的过程中,可以选择重写doGet以及doPost  或者 直接重写service方法来处理请求。

    Servlet在web.xml中的配置:非常关键的一步


    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      
      <!-- 配置LoginServlet : 配置LoginServlet与 处理的请求的映射.  
          
           客户端请求匹配的过程:
               与<serlvet-mapping>中的< url-pattern>进行匹配, 匹配到以后,再找到<servlet-mapping>
               中的<servlet-name>的值, 再拿上该值 到<servlet>节点中匹配 相同的<servlet-name>,进而
               找到<servlet-class>.
               Tomcat通过反射的方式创建LoginServlet的实例,根据具体的请求方式调用对应的doGet或者是doPost方法. 
      
      -->
      <servlet>
          <servlet-name>loginServlet</servlet-name>
          <servlet-class>com.web.servlet.LoginServlet</servlet-class>
          
      </servlet>
      
      <servlet-mapping>
          <servlet-name>loginServlet</servlet-name>
          
          <!--  客户端的登录请求: http://localhost:8888/web01/login -->
          <url-pattern>/login</url-pattern>
      </servlet-mapping>
    </web-app>
    package com.web.servlet;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class LoginServlet extends HttpServlet {
        /*
        //根据具体的请求方式来调用doGet 或者 doPost
        @Override
        protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
                throws ServletException, IOException {
            // TODO Auto-generated method stub
            super.service(arg0, arg1);
        }
        */
        
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            doPost(req, resp);
        }
        
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            System.out.print("qingqiu");
        }
    }

  • 相关阅读:
    Flask的部署
    server 08 R2 NBL 报错:RPC 服务器在指定计算机上不可用
    Exchange 2010 打补丁的顺序
    批量创建域账号
    Exchange 正版化 授权
    邮件本地备份策略原则
    TMG 模拟公司网络架构要点
    webservice 测试地址
    PYDay10&11&12&13-常用模块:time|datetime|os|sys|pickle|json|xml|shutil|logging|paramiko、configparser、字符串格式化、py自动全局变量、生成器迭代器
    Python 编程要求
  • 原文地址:https://www.cnblogs.com/lemonzhang/p/12840674.html
Copyright © 2011-2022 走看看