WEB开发网
开发学院软件开发Java Geronimo!第 3 部分: 状态问题 阅读

Geronimo!第 3 部分: 状态问题

 2009-11-11 00:00:00 来源:WEB开发网   
核心提示: 为简化并自动化传递代表这个 用户状态的其他信息,可以用名称=值的方式将属性值和会话关联起来,Geronimo!第 3 部分: 状态问题(4),如 清单 1 中的代码片段所示,清单 1. ShoppingCartServletpublicclassShoppingCartServletextend

为简化并自动化传递代表这个 用户状态的其他信息,可以用名称=值的方式将属性值和会话关联起来。如 清单 1 中的代码片段所示。


清单 1. ShoppingCartServlet
public class ShoppingCartServlet extends HttpServlet { 
 public void doGet (HttpServletRequest request, HttpServletResponse response) 
 throws ServletException, IOException { 
 
 // Get session and current shopping cart information. 
 HttpSession theSession = request.getSession(); 
 TheShoppingCart theCart = (TheShoppingCart) session.getAttribute(thecart); 
  . 
   . 
  . 
 // Calculate the total price of all items in the cart. 
 double totalPrice = theCart.getTotal(); 

大量的处理都在其幕后进行,这些处理居于 Geronimo 的核心来维护之前所描述过的状态问题,并且 Java servlet 机制会掩藏这些细节。信息存储于请求之间,所以总能知道一个给定用户和公司的(交易)历史记录。

实现维护客户机浏览器状态的 HttpSession 方法的应用程序也具有和其使用相关联的重要的附加功能。在这些附加的功能中,其中一种功能是能够用来自动通知会话关系中其他对象的。例如,如果一些对象实现了 javax.http.HttpSessionBindingListener 接口,那么它们就可以被告知它们已经被添加到一个会话中或已经从一个会话中删除。

如果与对象相关联的会话是被动的或主动的,如在虚拟机(VM)间或持久性存储间移动,当该对象实现了 javax.http.HttpSessionActivationListener 接口时,就能够向该对象通知这项改变。

上一页  1 2 3 4 5 6  下一页

Tags:Geronimo 部分 状态

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接