Geronimo!第 3 部分: 状态问题
2009-11-11 00:00:00 来源:WEB开发网为简化并自动化传递代表这个 用户状态的其他信息,可以用名称=值的方式将属性值和会话关联起来。如 清单 1 中的代码片段所示。
清单 1. ShoppingCartServletpublic 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 接口时,就能够向该对象通知这项改变。
- ››Geronimo V2.1.5 中的安全提升
- ››Geronimo 叛逆者: Apache Geronimo 的 JMS 实现:...
- ››Geronimo 叛逆者: Geronimo 与 Apache 许可带来的...
- ››Geronimo 叛逆者: 加入集群功能
- ››Geronimo 叛逆者: 摒弃 JBoss,使用 Apache Geron...
- ››Geronimo 叛逆者: 使用集成软件包:Codehaus 的 W...
- ››Geronimo 叛逆者: 直面 JSF
- ››部分 WM6.5 手机有望升级到 Windows Phone 7
- ››Geronimo!第 2 部分: 构建 Geronimo
- ››Geronimo!第 3 部分: 状态问题
- ››Geronimo!第 4 部分: 模式
- ››Geronimo 叛逆者: 使用集成程序包:GlassFish JST...
更多精彩
赞助商链接