Java中的用户角色

时间:2016-12-24 05:49:06

标签: java database oop design-patterns

我正在构建POS系统。我认为我不知道什么功能将扮演什么样的角色。这就是我现在所拥有的:

  • 我想我有一个javafx主要阶段,场景和tabpane的主要类。此外,每个类都扩展了tabPane的Tab类,以及该功能所需的所有代码。所以每个标签都是独立的。
  • 另一方面。 User类是抽象的,具有基本属性和抽象方法 tasks() ,并且在扩展此抽象类的每个具体用户角色(Administrator)类中实现此方法。在tasks()方法中,我将在List中添加该用户角色所需的所有选项卡类。

我想知道这个方法对于用户角色是好还是坏。 Acctualy我不满意。原因是 开放式关闭 OOP原则。我不确定哪个用户角色会是什么,所以我想让它变得动态。

  • 现在,我想到的是,我只有一个用户可以启动,那就是管理员。然后,他只有他可以创建其他用户角色并保存到数据库。他需要的用户角色选项卡,管理员将在创建用户角色时添加。这样,您可以返回并向用户角色添加一些新功能。无需返回代码,并向tasks()方法添加新内容。

我的关注是如何实现这一点。我应该在数据库中放置什么任务,我应该把Strings放在一些具体的类中,根据字符串添加任务(有很多if语句),还是应该序列化任务的arraylist然后保存到数据库?

1 个答案:

答案 0 :(得分:0)

要实现此目的,您可以使用2835spring-security

apache-shiro中,您可以使用下面的注释。

apache-shiro

@RequiresRole("administrator")
class TabPane{
......
........... 
......
}