了解wicket Web应用程序会话

时间:2013-09-26 02:35:43

标签: session wicket

我正在努力了解wicket的应用程序是如何工作的,我是Web应用程序设计和Wicket的新手。

当wicket部署到服务器并启动时,会从服务器向每个用户提供会话。那么服务器会话和wicket会话之间有什么区别?因此,访问Web应用程序的每个用户都会共享存储在Web应用程序中的相同数据,直到您使用wicket的会话为止?所以我的意思是说我有一个用6个字符串硬编码的列表,用户A转到应用程序的URL并查看这六个字符串并决定在列表中添加一个字符串,所以现在有7个字符串。用户B转到应用程序URL,他会看到7个字符串或6个字符串吗?

何时使用wicket会话的原因?

谢谢!

1 个答案:

答案 0 :(得分:6)

引用Apache网站:

  

在Wicket中,自动管理所有服务器端状态。 你永远不会   直接使用HttpSession对象或类似的包装器来存储状态。   相反,state与组件相关联。每个服务器端页面   component包含有状态组件的嵌套层次结构,其中每个组件都有   最后,组件的模型是POJO(Plain Old Java Object)。   Wicket在每个用户的会话中维护这些页面的地图。一   此页面映射的目的(以及每个页面上的组件层次结构)是   允许框架隐藏组件和方式的所有细节   模型被访问。你处理简单,熟悉的Java对象和   Wicket处理诸如URL,会话ID和GET / POST请求之类的事情。

总而言之,Wicket对象和Wicket会话将其数据存储在一个专门的数据结构中,该结构使用常规会话来自行序列化。 Wicket使用会话的方式抽象旧方法,从服务器端有状态UI对象以及持久数据中受益。

编辑:将两者混合或编码自己的抽象与发明Wicket已经重新发明的轮子相同。