在J2EE Web应用程序中实现单页用户每页概念

时间:2015-01-02 17:44:36

标签: java java-ee

在J2EE环境中是否存在用于在每个页面上实现单个用户模型的模式?

每页一个用户我的意思是,如果我访问:

mysite.com/foo/pageA

如果其他人试图访问此页面,他们应该无法直到我:

-navigate away from the page
-close the browser

现在,我已经使用一个map来实现这个功能,该map是处理foo/*请求的servlet中的成员变量。地图的键是页面名称(枚举),地图的值是一个布尔值,表示该特定页面是否被锁定。

在提供页面之前,我查看地图值以确定页面是否被占用,如果不是,我将用户发送到页面并更新地图条目(在地图上同步),如果它是的,我将用户发送到显示页面被占用的消息的页面。

为了实现锁定,我使用onbeforeunload javascript方法,我在其中使用ajax post调用将map条目更新为false,再次在地图上进行同步。

我知道如果应用程序扩展到多个实例,则必须保持锁定/解锁,但就目前而言,该应用程序仅为大约10个用户提供服务。

它似乎正在工作,但我想知道是否有已建立的模式来实现这一点,或者如果将页面锁定为仅允许单个用户的想法在Web应用程序中是不好的做法。

0 个答案:

没有答案