一。简介
1.什么是Servlet
Servlet是JavaWeb程序开发基础,JavaEE规范的一个组成部分
需要在web.xml中配置访问路径 servlet标签servlet-mapping标签
2.Servlet的作用
通过Servlet这种类型处理之后,生成动态网页(数据变化)
3.什么是HtppServlet
HttpServlet是sun公司提供的一个专门为Http协议提供服务的Servlet
HttpServlet简化了Servlet的开发
4.get和post方式发送数据的区别
get方式:通过地址栏传递,明文传递数据,不安全,传递数据量小
post方式:通过请求提传递数据,密文传递数据,安全,传递数据量大
5.forward与redirect的区别
forward:一次请求,地址栏不变,使用request作用域传递数据在服务器内部传递数据
request:两次请求,地址栏改变,不能应用呢request作用域传递数据
6.什么是Http协议
无状态的协议,天生不能记录用户的状态
7.Cookie的核心原理
cookie就是一个键值对,在客户端访问服务器时,服务器会创建一个cookie对象,将值传回客户端存储在操作系统中
当客户端再次访问服务器时,客户端会自动调用操作系统中的cookkie传入服务器
8.cookie的问题
① 不安全
② 可以被禁用
③ 存储的数据量小
④ 默认不可以存储中文 需要用URLEncoder和URLDecoder编解码处理
⑤ 不同的浏览器cookie在操作系统中存放的位置不同
9.什么是session
一个session代表一次会话,在服务器端保存用户信息,同时session也是一个作用域
10.session的主要作用
解决会话跟踪问题
11.session的生命周期
① 手动销毁:session.invalidate();
② 移除指定的命名属性;session.removeAttribute(key);
③ 超时自动销毁:tomcat默认30分钟、从最后一次用户操作开始计时
12.session的实现原理
在服务器端创建session之后,tomcat会自动创建一个cookie名为jsessionid带回给客户端,从而保证客户端访问的都是自己的session,
如果cookie被禁用则URL重写调用response.encoderUrl()方法,如果想做URL重写保证禁用cookie时还可以找到session,那么所有页面都不能在用html,
都需要用jsp动态网页
13.session的核心原理
① 服务器端为每一个用户浏览器创建对应自己的session
② 同一个client浏览器不管发送几次请求都可以找到自己的session
14.cooke和session的区别
都用来解决会话跟踪问题
cookie:是客户端浏览器保存用户信息
session:是服务器端保存用户信息
15.三大作用域
① request:一次请求有效
使用:forward跳转request作用域传递数据
② session:client浏览器不变session不变
使用:表示用户 记录用户状态 存储数据
③ ServletContext:web引用不变ServletContext不变,代表整个网站或web应用
16.连接池
作用:在原有JDBC开发过程中,通过class.forName等代码创建连接是现用现创建,系统效率低,所以产生了连接池。
本质上就是预先创建一些连接存储起来,用户需要访问数据时,直接从连接池中获取已创建好的连接,进行使用,使用后归还,这样就减少了连接创建过程中的性能损失你,提高锡系统的运行效率
17.过滤器
① 作用:Filter解决的是多个Servlet中存在的共有代码多余问题,因日了Filter之后,把多个Servlet中的多余代码,提取到Filter中,那么这样用户的请求先经过Filter,在访问后续的Servlet,保证用户功能完成,又解决了代码的冗余问题
② 核心实现原理
客户端请求首先经过过滤器
服务器创建servlet
找到web.xml中配置访问路径
通过url-pattern获取servlet-class类名通过反射创建对象
③ 五个有用的过滤器
【1】 使浏览器不缓存页面
【2】 检测用户是否登录
【3】 字符集编码处理
【4】 资源保护
【5】 利用filter限制用户浏览器权限
④ 过滤器适用场景
【1】认证过滤
【2】登录和审核过滤
【3】图像转换过滤
【4】数据压缩过滤
【5】加密过滤
【6】令牌过哦率
【7】资源访问触发事件
⑤ 监听器
用来监控、监听某一种特定的事件的组件,一旦发现特定的事件后,监听器处理
18.总结
① Servlet的生命周期:
【1】初始化阶段:调用init方法
【2】响应客户请求:调用service方法,对外提供服务
【3】终止阶段:调用destroy方法,释放资源
② Servlet创建
【1】Servlet对象一种类型值创建一个对象提供服务,它时单例的
【2】多线程访问为了保证Servlet线程安全,不提供成员变量
③ Servlet作为控制器的问题
【1】收集客户端数据的代码冗余
【2】手工处理中文字符集
【3】手工进行类型转换
【4】跳转路径,硬编码在了Servlet中,不利于后续的修改
1.什么是Servlet
Servlet是JavaWeb程序开发基础,JavaEE规范的一个组成部分
需要在web.xml中配置访问路径 servlet标签servlet-mapping标签
2.Servlet的作用
通过Servlet这种类型处理之后,生成动态网页(数据变化)
3.什么是HtppServlet
HttpServlet是sun公司提供的一个专门为Http协议提供服务的Servlet
HttpServlet简化了Servlet的开发
4.get和post方式发送数据的区别
get方式:通过地址栏传递,明文传递数据,不安全,传递数据量小
post方式:通过请求提传递数据,密文传递数据,安全,传递数据量大
5.forward与redirect的区别
forward:一次请求,地址栏不变,使用request作用域传递数据在服务器内部传递数据
request:两次请求,地址栏改变,不能应用呢request作用域传递数据
6.什么是Http协议
无状态的协议,天生不能记录用户的状态
7.Cookie的核心原理
cookie就是一个键值对,在客户端访问服务器时,服务器会创建一个cookie对象,将值传回客户端存储在操作系统中
当客户端再次访问服务器时,客户端会自动调用操作系统中的cookkie传入服务器
8.cookie的问题
① 不安全
② 可以被禁用
③ 存储的数据量小
④ 默认不可以存储中文 需要用URLEncoder和URLDecoder编解码处理
⑤ 不同的浏览器cookie在操作系统中存放的位置不同
9.什么是session
一个session代表一次会话,在服务器端保存用户信息,同时session也是一个作用域
10.session的主要作用
解决会话跟踪问题
11.session的生命周期
① 手动销毁:session.invalidate();
② 移除指定的命名属性;session.removeAttribute(key);
③ 超时自动销毁:tomcat默认30分钟、从最后一次用户操作开始计时
12.session的实现原理
在服务器端创建session之后,tomcat会自动创建一个cookie名为jsessionid带回给客户端,从而保证客户端访问的都是自己的session,
如果cookie被禁用则URL重写调用response.encoderUrl()方法,如果想做URL重写保证禁用cookie时还可以找到session,那么所有页面都不能在用html,
都需要用jsp动态网页
13.session的核心原理
① 服务器端为每一个用户浏览器创建对应自己的session
② 同一个client浏览器不管发送几次请求都可以找到自己的session
14.cooke和session的区别
都用来解决会话跟踪问题
cookie:是客户端浏览器保存用户信息
session:是服务器端保存用户信息
15.三大作用域
① request:一次请求有效
使用:forward跳转request作用域传递数据
② session:client浏览器不变session不变
使用:表示用户 记录用户状态 存储数据
③ ServletContext:web引用不变ServletContext不变,代表整个网站或web应用
16.连接池
作用:在原有JDBC开发过程中,通过class.forName等代码创建连接是现用现创建,系统效率低,所以产生了连接池。
本质上就是预先创建一些连接存储起来,用户需要访问数据时,直接从连接池中获取已创建好的连接,进行使用,使用后归还,这样就减少了连接创建过程中的性能损失你,提高锡系统的运行效率
17.过滤器
① 作用:Filter解决的是多个Servlet中存在的共有代码多余问题,因日了Filter之后,把多个Servlet中的多余代码,提取到Filter中,那么这样用户的请求先经过Filter,在访问后续的Servlet,保证用户功能完成,又解决了代码的冗余问题
② 核心实现原理
客户端请求首先经过过滤器
服务器创建servlet
找到web.xml中配置访问路径
通过url-pattern获取servlet-class类名通过反射创建对象
③ 五个有用的过滤器
【1】 使浏览器不缓存页面
【2】 检测用户是否登录
【3】 字符集编码处理
【4】 资源保护
【5】 利用filter限制用户浏览器权限
④ 过滤器适用场景
【1】认证过滤
【2】登录和审核过滤
【3】图像转换过滤
【4】数据压缩过滤
【5】加密过滤
【6】令牌过哦率
【7】资源访问触发事件
⑤ 监听器
用来监控、监听某一种特定的事件的组件,一旦发现特定的事件后,监听器处理
18.总结
① Servlet的生命周期:
【1】初始化阶段:调用init方法
【2】响应客户请求:调用service方法,对外提供服务
【3】终止阶段:调用destroy方法,释放资源
② Servlet创建
【1】Servlet对象一种类型值创建一个对象提供服务,它时单例的
【2】多线程访问为了保证Servlet线程安全,不提供成员变量
③ Servlet作为控制器的问题
【1】收集客户端数据的代码冗余
【2】手工处理中文字符集
【3】手工进行类型转换
【4】跳转路径,硬编码在了Servlet中,不利于后续的修改