第二部分-Servlet 技术(一)

第二部分-Servlet 技术(一),第1张

第二部分-Servlet 技术(一) 标题Servlet技术

一.什么是 Servlet

  • 1、Servlet 是 JavaEE 规范之一。规范就是接口
  • 2、Servlet 就 JavaWeb三大组件之一。三大组件分别是:Servlet 程序、Filter 过滤器、Listener 监听器。
  • 3、Servlet是运行在服务器上的一个 java 小程序,它可以接收客户端发送过来的请求,并响应数据给客户端。

二:手动实现 Servlet 程序-步骤

  • 第一步:编写一个类去实现 Servlet 接口
  • 第二步:实现 service 方法,处理请求,并响应数据
  • 第三步:到 web.xml 中去配置servlet 程序的访问地址
  • 第一步:编写HellServlet类去实现 Servlet 接口

  • 继承Servlet接口一直报错,其原因是:未导入servlet的jar包
  • 解决:
    • 1.找到tomcat文件夹下面的lib文件夹,找出“servlet-api.jar”
    • 2.复制该jar文件到你的web项目下的web-inf中的lib中。
    • 3.ctrl+s重新保存之前报错的文件,系统会自动更新,错误消失


  • 第二步:实现 service 方法,处理请求,并响应数据

  • 第三步:到 web.xml 中去配置servlet 程序的访问地址
在web.xml文件下,配置定义servlet程序的访问地址

        
            
            HelloServlet
            
            com.jianqun.servlet.HelloServlet
        
        
        
            
            HelloServlet
            
            /hello
        
  • 访问地址:http://localhost:8080/dynamic_war/hello


三:url 地址到 Servlet 程序的访问过程


四:Servlet 的生命周期

  • 1、执行 Servlet 构造器方法
  • 2、执行 init 初始化方法 第一、二步,是在第一次访问的时候创建 Servlet 程序会调用。
  • 3、执行 service 方法 第三步,每次访问都会调用。
  • 4、执行 destroy 销毁方法 第四步,在 web 工程停止的时候调用。


五:GET 和 POST 请求的分发处理

  • 实现get和post请求的分发处理



六. 通过继承 HttpServlet 实现 Servlet 程序

  • 在实际开发中,我们很少使用实现servlet接口的的方式来实现POST和GET请求等,在开发的时候,大家一般都是使用继承 HttpServlet 类的方式去实现 Servlet 程序。
  • 具体的过程是:
    • 1.编写一个类去继承 HttpServlet 类
    • 2.根据业务需要重写 doGet 或 doPost 方法
    • 3.到 web.xml 中的配置 Servlet 程序的访问地址
  • 第一步: 编写一个类去继承 HttpServlet 类
  • 第二步: 根据业务需要重写 doGet 或 doPost 方法

第三步:到 web.xml 中的配置 Servlet 程序的访问地址


七:使用 IDEA 创建 Servlet 程序

  • 使用IDEA新建没有servlet菜单选项解决办法

  • 使用 IDEA 创建 Servlet 程序




八.Servlet 类的继承体系


ServletConfig 类

一.什么是ServletConfig 类?

  • 1.从类名上来看,就知道是 Servlet 程序的配置信息类。
  • 2.Servlet 程序和 ServletConfig 对象都是由 Tomcat 负责创建,我们负责使用。
  • 3.Servlet 程序默认是第一次访问的时候创建,ServletConfig 是每个 Servlet程序创建时,就创建一个对应的 ServletConfig 对 象。

二.ServletConfig 类的三大作用

  • 1、可以获取 Servlet程序的别名 servlet-name 的值
  • 2、获取初始化参数 init-param
  • 3、获取ServletContext 对象


注意事项:


ServletContext 类

一.什么是 ServletContext?

  • 1、ServletContext 是一个接口,它表示 Servlet 上下文对象
  • 2、一个 web 工程,只有一个 ServletContext 对象实例。
  • 3、ServletContext 对象是一个域对象。
    • 这里所谓的域对象就是说:是可以像 Map 一样存取数据的对象,叫域对象。
    • 这里的域指的是存取数据的 *** 作范围,整个 web 工程。

  • 4、ServletContext 是在web 工程部署启动的时候创建。在 web 工程停止的时候销毁。

ServletContext 类的四个作用

  • 1、获取 web.xml 中配置的上下文参数 context-param
  
        
            namespace
            context
        
        
        
            password
            root
        

		
	        ContextServlet
	        /hello4
	    
ServletContext context = getServletConfig().getServletContext();
    String namespace = context.getInitParameter("namespace");
    System.out.println("context-param参数username的值是" + namespace);

    String password = context.getInitParameter("password");
    System.out.println("context-param参数username的值是" + password);

  • 2、获取当前的工程路径,格式: /工程路径
  //2.获取当前的工程路径,格式: /工程路径
    System.out.println("获取当前的工程路径" + context.getContextPath());
  • 3、获取工程部署后在服务器硬盘上的绝对路径
//:3.获取工程部署后在服务器硬盘上的绝对路径
//:" / ":斜杠被服务解析的地址为:http://port/工程名/
System.out.println("工程部署的路径" + context.getRealPath("/"));


  • 4、像 Map 一样存取数据

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/4660648.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-06
下一篇 2022-11-06

发表评论

登录后才能评论

评论列表(0条)

保存