当前位置:   article > 正文

Jive论坛系统完整分析(1)

jive论坛

 本文来自这里:http://www.blogjava.net/alex/archive/2006/08/31/66830.html

 1  Jive 功能需求

Jive 功能需求分析类似于一个新系统的需求分析。只有了解 Jive 系统实现了哪些论坛功能,才能进一步研究和学习它是怎样巧妙、优雅地实现这些功能的。
论坛系统是网络交流的一种主要互动功能系统,如图 3-1 所示。通过论坛系统,用户可以共同就某个话题不断进行讨论,通过发贴功能发布新的话题,通过回贴功能回复别人的话题。 Jive 论坛系统可以允许管理员动态地创建新的论坛、编辑论坛的内容、设置论坛过滤信息以及管理注册用户等。
 
图 3-1  Jive 用例图
在 Jive 论坛系统中,用户角色和权限是紧密联系在一起的。主要分两大角色:普通用户和管理员,具体的表现形式是通过权限组合来体现的。管理方面的权限有:
·           SYSTEM_ADMIN ,系统管理员,可以管理整个系统。
·           FORUM_ADMIN ,论坛管理员,可以管理某个特定的论坛。
·           USER_ADMIN GROUP_ADMIN ,用户和组管理员,可以管理一些特定用户和用户 组。
论坛的读写权限包括:读权限,创建一个新主题,创建一个新的帖子等。
Jive 中没有明确定义普通用户和管理员角色,而是直接通过以上权限组合和具体用户直接建立联系,并将这种直接联系保存到数据库中。
在权限不是很复杂的情况下,这种没有引入角色的做法比较简单直接。但由于用户和权限直接挂钩,而用户和权限都可能在不断地动态变化,那么它们之间由于联系太直接和紧密,对各自变化形成了限制。所以,对于复杂的权限系统,引入了基于角色的权限系统,这将在以后章节中进一步讨论。
Jive 论坛业务对象主要分为 Forum 、 ForumThread 和 ForumMessage ,它们之间的关系如图 3-2 所示。
每个论坛 Forum 包含一系列 ForumThread (主题),而每个主题都是由很多内容帖子 ForumMessage 组成的,这是一个聚集关系。这 3 种对象中每一个对象都涉及到对象数据的创建、编辑、查询和删除,这些对象数据分别保存在数据库中。这 3 个对象对于不同的角色可操作访问权限是不一样的,只有系统管理员和论坛管理员可以对 Forum 相关数据实行操作,普通用户可以创建或编辑 ForumThread 和 ForumMessage 。
Jive 论坛为了实现不同用户对不同基本对象的不同操作权限,通过设定一个统一的入口,在这个入口将检查客户端每次对数据的操作权限,如图 3-3 所示。
  
图 3-2  基本对象关系图                             图 3-3  入口示意图
客户端每次对数据库的操作,都要经过 ForumFactory 入口进入。在 ForumFactory 中会动态生成一个访问控制代理 ForumFactoryProxy ,通过 ForumFactoryProxy 检查客户端访问方法是否符合整体权限访问控制要求。
下面将从 ForumFactory 作为 Jive 论坛系统分析入手,结合设计模式逐步分解论坛功能的具体实现。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/884057
推荐阅读
相关标签
  

闽ICP备14008679号