`
CB-13
  • 浏览: 22302 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论
文章列表
串行化(serialization)是指将一个对象的当前状态转换成字节流(a stream of bytes)的过程,而反串行化(deserialization)则指串行化过程的逆过程,将字节流转换成一个对象,打回原形。 一、串行化的意义: 1:解决Web应用程序的无状态弊端 一旦将某一对象串行化,得到的字节可以存储在文件、数据库,或内存中—— 只要是可以存储的任何地方。需要恢复对象时,仅仅只需从它存储的位置反串行化即可。对象固有的这种特性对于无状态的Web应用程序是非常重要的,因为它允许重要的状态信息可以在用户请求之间保留。 2:应用程序边界之间传递对象 串行化也允许对象在应 ...
1、HTTP协议本身是“连接-请求-应答-关闭连接”模式的,是一种无状态协议(HTTP只是一个传输协议); 2、Cookie规范是为了给HTTP增加状态跟踪用的(如果要精确把握,建议仔细阅读一下相关的RFC),但不是唯一的手段; 3、所谓Session,指的是客户端和服务端之间的一段交互过程的状态信息(数据);这个状态如何界定,生命期有多长,这是应用本身的事情; 4、由于B/S计算模型中计算是在服务器端完成的,客户端只有简单的显示逻辑,所以,Session数据对客户端应该是透明的不可理解的并且应该受控于服务端;Session数据要么保存到服务端(HttpSession),要么在客户端 ...
cookie和session 具体来说cookie机制采用的是在客户端保持状态的方案。它是在用户端的会话状态的存贮机制,他需要用户打开客户端的cookie支持。cookie的作用就是为了解决HTTP协议无状态的缺陷所作的努力。 而session机制采用的是一种在客户端与服务器之间保持状态的解决方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的。而session提供了方便管理全局变量的方式。 session是针对每一个用户的,变量的值保存在服务器上,用一个sessionID来区分是哪个用户s ...
在Servlet中,利用RequestDispatcher对象,可以将请求转发给另外一个Servlet或JSP页面,甚至是HTML页面,来处理对请求的响应。 一、RequestDispatcher接口方法简介       1. RequestDispatcher对象由Servlet容器来创建,封装一个由路径所标识的服务器资源。         2. RequestDispatcher接口中定义了二种方法用于请求转发:               forward(ServletRequest,ServletResponse)方法:           将请求转发给服务器上另外一个 ...
属性是存在于3个Servlet API对象(ServletContext、HttpSession和HttpServletRequest)中的对象集。简单来说,我们可以认为它们是键值对的集合。 对于属性的作用域也有3个,即Context、Session和Request作用域,属性可以绑定到这三个作用域上。每个作用域都有它的优点和缺点。取决于具体的需求,我们会将一个属性存放到其中的一个作用域中。 用于存储、查询和删除这些属性的方法对于所有的作用域都是相同的。它们是: Object getAttribute(String name); void setAttribute(Strin ...
JSP/Servlet 中的事件处理写过AWT或Swing程序的人一定对桌面程序的事件处理机制印象深刻:通过实现Listener接口的类可以在特定事件(Event)发生时,呼叫特定的方法来对事件进行响应。 其实我们在编写JSP/Servle程序时,也有类似的事 ...

Servlet的输出

    博客分类:
  • Web
ServletResponse接口只提供了两个流可供选择:ServletOutputStream用于输出字节,PrintWriter用于输出字符数据。 PrintWriter   PrintWriter writer = response.getWriter(); writer.println("some text and HTML");  用于把文本数据打印到一个字符流。尽管也可以把字符数据写至OutputStream,但PrintWriter流专门设计用于处理字符数据。 OutputStream ServletOutputStream out = r ...
Servlet的生命周期很简单:只有一个主要的状态——初始化。如果servlet没有初始化,则要么正在初始化(运行其构造函数或init()方法)、正在撤销(运行其destroy()方法),要么就是还不存在。 init()方法有可能被覆盖,如果有初始化代码(如得到一个数据库连接,或向其他对象注册),就要覆盖servlet类中的init()方法。service()方法不太可能被覆盖,应该覆盖doGet()和/或doPost()方法,而由HTTPServlet中的service()实现来考虑该调用哪一个方法(doGet()、doPost()等)。doGet()和doPost()方法则至少要覆盖其中之 ...
Global site tag (gtag.js) - Google Analytics