Servlet 编程技术

概念

servlet是用Java编写的协议和平台都独立的服务器端组件。使用“请求/响应”模式,运行于服务器内部的独立应用程序,不需要图形接口。

Servlet 生命周期

1.加载和实例化

当容器启动时或客户端请求某个Servlet时,服务器从本地或远程装载这个Servlet,成功后创建Servlet 的实例;

2.初始化

第一步完成之后,容器调用Servletinit()方法初始化该servlet,此时可以做一些初始化的操作;

3.处理请求

初始化后,Servlet开始处理请求,Servlet为每一个客户生成一个Service调用,这些请求可以是并行的,处理请求时,通过ServletRequest获取客户端信息,处理完成后,将处理结果封装到ServletResponse中;

4.终止

当容器检测到这个Servlet实例不需要了,容器调用Servlet的destory方法释放所有资源,表明该Servlet可以被收回了,该Servlet实例即可被Java垃圾收集器回收。

Servlet的相关类和接口简单介绍

1.HttpServlet类

它是一个抽象类,他的作用是接收客户端的请求,并将处理结果返回给客户端。

2.HttpServletRequest接口

该接口扩展自ServletRequest接口,用于为HttpServlet提供更多的工能。Servlet引擎会实现该接口,创建HttpServletRequest对象,将客户端的请求信息封装,传给HttpServlet的Service 方法。

3.HttpServletResponse接口

该接口扩展自OutputStream类,用于返回响应结果到客户端。

4.ServletConfig接口

ServletConfig定义了一个Servlet配置对象,Servlet引擎可以用来传递信息给Servlet,以便初始化Servlet。

5.ServletContext

定义了一套Servlet 与Servlet引擎通信的方法。

6.ServletInputStream类

它是一个抽象类,可以从客户端请求读取一个二进制输入流。

7.ServletOutputStream

它是一个抽象类,提供了一个输出流像客户端发送数据。

Cookie与Session

Cookie是一组短小的、服务器发送到浏览器的文本信息,它存储在客户端本地,当浏览器再次访问相同的网站是,该文本信息会原样的传回给服务器。

Session是一种服务器端得机制,当程序需要为某个客户端的请求创建一个session时,服务器首先检查这个客户端的请求里是否已包含了一个session标识(称为session id),如果已包含则说明以前已经为此客户端创建过session,服务器就按照session id把这个session检索出来使用(检索不到,会新建一个),如果客户端请求不包含session id,则为此客户端创建一个session并且生成一个与此session相关联的session id。

cookie 和session 的区别:

1、cookie数据存放在客户机(内存或硬盘)上,session数据放在服务器上;

2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考;

3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能 ;

4、单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能大于3K。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值