Servlet教程动力节点老杜

1.抽象类作用:

降低接口实现类对接口实现过程的难度

将接口中不需要使用的抽象方法教给抽象类进行完成

这样接口实现类只需要对接口需要的方法进行重写

2.静态资源文件 : 调用源文件名

动态资源文件 : 调用别名

3.设计模式六大原则

修改方法时,用重载,将原来的方法进行重载 ,原方法留着,写个重载。

4.优化jdbc方法–Connection创建和销毁

jdbc运行过程消耗时间主要是connection创建和销毁

所以我们要去掉connection的创建和销毁

将这个工作交给全局作用域对象

Connection创建 交给 全局作用于对象创建

Connection销毁 交给全局作用域对象销毁

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现

5.向Tomcat索要的输出流

Servlet教程(动力节点老杜)(自己总结方便复习)_select_02

6.doGet 和doPost

doPost 用 Response.setCharacterEncoding(“utf-8”);

doGet 用 Response.setCon

7.get和post选择

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_03

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_04

8.浏览器缓存

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_05

什么是javaSE?(老杜)

java提供的基础的库

什么是javaEE?

javaEE其实就是sun(oracle)公司为我们程序员提供的一个庞大的库,而这套库是支撑我们开发企业内部软件的

通过这个庞大的库我们可以进行企业级的开发(企业内部的软件)

浏览器 服务器 数据库 Java程序

Servlet教程(动力节点老杜)(自己总结方便复习)_java_06

Servlet教程(动力节点老杜)(自己总结方便复习)_java_07

!!浏览器 服务器 数据库 Java程序!!

B/S架构涉及的角色以及协议

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_08

url

URL可以定位

URI 网络中某个资源的名称

协议:IP:端口(PORT):URI

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_09

一 servlet规范(老杨)

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_10

二 servlet接口实现类


  1. servlet接口来自于servlet规范下一个接口,这个接口存在http服务器提供jar包
  2. Tomcat服务器下lib文件有一个servlet-api.jar存放servlet接口(javax.servlet.servlet接口)
  3. servlet规范中任务,Http服务器能调用的【动态资源你文件】必须是一个servlet接口实现类

Servlet教程(动力节点老杜)(自己总结方便复习)_select_11

三 Servlet接口实现类开发步骤

第一步:创建一个java类继承与HttpServlet父类,使之成为一个Servlet接口实现类

第二步:重写HttpServlet父类两个方法。doGet或者doPost

浏览器------get----->oneServlet.doGet()

浏览器-----post---->oneServlet.doPost()

第三步:将servlet接口实现了信息【注册】到Tomcat服务器

【网站】------>【web】------>【WEB-INF】------->web.xml

Servlet教程(动力节点老杜)(自己总结方便复习)_select_12

四。servlet对象生命周期

1.网站中的所有servlet接口实现类的实例对象,只能由Http服务器负责创建。

开发人员不能手动创建servlet接口实现类的实力对象

2.在默认情况下,http服务器接受到对于当前servlet接口实现类第一个请求时

自动创建servlet接口实现类的实例对象

3.在Http服务器运行期间,一个servlet接口实现类只能被创建出一个实例对象

4.在Http服务器关闭时刻,自动将网站中所有的servlet对象进行销毁

五HttpservletResponse接口

Servlet教程(动力节点老杜)(自己总结方便复习)_java_13

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_14

六HttpServletRequest接口

Servlet教程(动力节点老杜)(自己总结方便复习)_select_15

Servlet教程(动力节点老杜)(自己总结方便复习)_java_16

URI

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_17

request请求头和请求体(中文乱码)中的内容

Servlet教程(动力节点老杜)(自己总结方便复习)_java_18

Servlet教程(动力节点老杜)(自己总结方便复习)_select_19

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_20

request.setCharacterEncoding(“utf-8”);

读取浏览器发送的参数

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_21

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_22

七。请求对象和响应对象的生命周期


  1. 在Http服务器接收到浏览器发送的【Http请求协议包】之后,
    自动为当前的【Http请求协议包】生成一个【请求对象】和【响应对象】
  2. 在Http服务器调用doGet、doPost方法时,负责将【请求对象】和【响应对象】
    作为实参传递到方法,确保doGet、doPost正确执行
  3. 在Http服务器准备推送Http响应协议包之前,负责将本次请求关联的【请求对象】和【响应对象】销毁

    1. ***【请求对象】和【响应对象】生命周期贯穿一次请求的处理过程
    2. ***【请求对象】和【响应对象】相当于用户在服务器端的代言人、



Servlet教程(动力节点老杜)(自己总结方便复习)_select_23

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_24

八。欢迎资源文件

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_25

九。Http状态码

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_26

100 200 302 404 405 500

十。多个servlet之间调用规则***【背】

Servlet教程(动力节点老杜)(自己总结方便复习)_select_27

Servlet教程(动力节点老杜)(自己总结方便复习)_java_28

十一、重定向解决方案***【背】

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_29

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_30

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_31

十二、请求转发解决方案***【背】

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_32

Servlet教程(动力节点老杜)(自己总结方便复习)_select_33

资源文件名一定以’’/’'开头

Servlet教程(动力节点老杜)(自己总结方便复习)_select_34


Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_35

Servlet教程(动力节点老杜)(自己总结方便复习)_java_36


十三、多个servlet之间数据共享实现方案

Servlet教程(动力节点老杜)(自己总结方便复习)_select_37

十四、ServletContext接口对象【全局作用域对象】【一】

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_38

Servlet教程(动力节点老杜)(自己总结方便复习)_java_39

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_40

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_41

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_42

十五、Cookie【二】

cookie工作原理图

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_43

Servlet教程(动力节点老杜)(自己总结方便复习)_select_44

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_45

cookie划卡消费

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_46

十六、HttpSession接口【三】

Servlet教程(动力节点老杜)(自己总结方便复习)_java_47

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_48

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_49

Servlet教程(动力节点老杜)(自己总结方便复习)_select_50

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_51

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_52

只有登录页面才能用 ----getSession()

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_53

Servlet教程(动力节点老杜)(自己总结方便复习)_select_54

十七、HttpServletRequest接口实现数据共享【四】

Servlet教程(动力节点老杜)(自己总结方便复习)_java_55

Servlet教程(动力节点老杜)(自己总结方便复习)_java_56

十八、Servlet规范拓展----------------监听器接口

监听器接口包listener

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_57

注册监听器web.xml

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_58

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_59

Servlet教程(动力节点老杜)(自己总结方便复习)_select_60

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_61

Servlet教程(动力节点老杜)(自己总结方便复习)_java_62

Servlet教程(动力节点老杜)(自己总结方便复习)_java_63

Servlet教程(动力节点老杜)(自己总结方便复习)_java_64

十九、Servlet规范扩展--------------------Filter接口(过滤器接口)

Servlet教程(动力节点老杜)(自己总结方便复习)_java_65

过滤器包名

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_66

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_67

Servlet教程(动力节点老杜)(自己总结方便复习)_select_68

Servlet教程(动力节点老杜)(自己总结方便复习)_select_69

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_70

1。检测合法性

Servlet教程(动力节点老杜)(自己总结方便复习)_java_71

2。增强处理

对拦截的请求进行处理 每个Servlet不必每个添加 相同代码(编码utf-8)

Servlet教程(动力节点老杜)(自己总结方便复习)_select_72

web.xml注册

Servlet教程(动力节点老杜)(自己总结方便复习)_java_73

Servlet教程(动力节点老杜)(自己总结方便复习)_java_74

oneFilter

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_75

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_76

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_77

防止用户恶意登录(地址栏直接输入资源文件名)

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_78

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_79

防止恶意登录过滤器

Servlet教程(动力节点老杜)(自己总结方便复习)_java_80

doFilter 过滤器

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_81

web.xml过滤器注册

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_82

正常登录的用户没有注册 就没有令牌session 也登录不了解决方案

java企业级应用 -----create filter(和创建servlet一样)

Servlet教程(动力节点老杜)(自己总结方便复习)_select_83


流程图

Servlet教程(动力节点老杜)(自己总结方便复习)_服务器_84

Servlet教程(动力节点老杜)(自己总结方便复习)_接口实现_85

Servlet完结撒花