小白之旅24

一. Servlet

server appletweb

1.1 概念:

运行在服务器的Java程序数据库

Servlet是一个接口,定义了Java类被tomcat识别的规则浏览器

1.2 Servlet的实现步骤

一、建立类实现Servlet接口tomcat

二、重写方法安全

三、配置Servlet的映射,在WebContent -> WEB-INF -> web.xml服务器

具体实现:app

一、implements Servletpost

二、init()、service()、destroy()url

三、code

<servlet>

​   <servlet-name>标识</servlet-name>

​   <servlet-class>全类名</servlet-class>

</servlet>

<servlet-mapping>

​   <servlet-name>标识</servlet-name>

​   <url-pattern>/资源</url-pattern>

</servlet-mapping>

执行原理:

一、当服务器接收到客户端的请求后,会解析地址栏中请求的资源,获取访问的Servlet的路径

二、它会自动查找web.xml文件,是否有一个url-pattern与请求的资源对应

三、若是有,则找到对应的servlet-class中的指定类

四、tomcat会将这个对应的Servlet类编译成字节码文件,放在WEB-INF -> classes下,

而后会将这个字节码文件加载进内存,并建立这个Servlet的对象

五、调用它的方法

二.Servlet的生命周期

2.1 init

Servlet被建立时执行,而且只执行一次

Servlet什么时候被建立?

一、默认状况下,是在第一次被访问时候执行

二、能够在web.xml中的某个servlet标签下配置<load-on-startup>n</load-on-startup>,让该Servlet在服务器启动时就建立

n:

  • 负整数,仍然是默认是第一次被访问时建立
  • 0:当服务器启动时就建立
  • 正整数:同上
  • n越小,越先执行

2.2 service

每次Servlet被访问都会执行

2.3 destroy

Servlet被销毁时执行,只执行一次

destroy方法在Servlet被释放前执行,用于释放资源

只有服务器正常关闭时,才会执行destroy方法

三. HttpServlet

Servlet 接口

GenericServlet 抽象类

HttpServlet 抽象类

实际开发中,咱们采用继承HttpServlet的方式来建立Servlet

步骤:

一、建立类继承HttpServlet

二、重写doGet()和doPost()方法

四. (练习)使用Servlet结合数据库完成注册功能

4.1 页面

一、两个输入框,一个提交按钮

二、action的提交位置

4.2 数据库

一、建库,建表

二、导入3个包:connector、c3p0、dbutils

三、c3p0-config.xml

四、获取链接池

五、定义注册方法

4.3 服务器

一、经过键获取对应的值

二、调用注册功能

五. url-pattern的配置

一、彻底匹配

请求的资源与url的配置彻底一致

二、目录匹配

格式:/ 目录 / *

表示:只要目录一致,目录后能够写任意内容来访问

三、扩展名匹配

格式:*.扩展名

表示:只要扩展名一致,文件名能够是任意的

注:目录匹配和扩展名匹配不能混用

四、缺省匹配

格式:/ 或 /*

表示:请求的资源不存在时就有该url对应的Servlet来处理

六. HTTP

概念:超文本传输协议

Hypertext Transfer Protocol

做用:定义客户端与服务器端通讯时须要遵循的规则,它定义的数据的格式

特色:

  • 它是基于TCP / IP 的高级传输协议
  • 它是基于 请求响应对的 ,一次请求对应一次响应
  • 它是无状态的:每次请求都相互独立,不能有数据的通讯、交互

版本:

  • HTTP 1.0:每次请求都会建立新的链接,在响应后都会断开链接。
  • HTTP 1.1:请求后建立的链接会被下次请求重复使用

请求消息的数据格式:

  • 请求行:请求方式 请求地址 请求协议
    • 请求方式:一共有7种,最经常使用的是get和post
      • get:
        • 请求的参数在地址后
        • 相对不安全
        • 提交的长度有限
      • post:
        • 请求的参数在请求体中
        • 相对安全
        • 提交的长度没有限制
    • 请求地址:http://localhost:8080/day24_4url/request
    • 请求协议:HTTP/1.1
  • 请求头:客户端告知服务器的信息
    • Accept:容许接收的资源
    • Referer:告知服务器当前的请求从哪一个url来,通常用于防盗链
    • User-Agent:告知服务器,所使用浏览器的版本
  • 请求体:封装请求的参数
    • get请求没有请求体,get请求的参数在url上
    • 只有post有请求体
相关文章
相关标签/搜索