用户框架构思
最初构造的时候,这个框架整体上来说是很混乱的。混乱到了User类可以做一切事情。混乱到了,觉得总结出所有User的功能整个程序的所有功能。
但是后来觉得这太混乱了,以我的能力无法组织在一个类中完成这相关的所有任务。所以也就分成了user和usermanger。user负责存放数据。而UserManager负责处理动作。这样做无非是使得系统的更加复杂。因为本质上来说,这个和上面没有任何区别。仍然是想通过用户系统完成所有的工作。结果就是写代码写得越来越复杂。
在写了代码之后,慢慢的觉得,整个系统应该只是做两件事情——封装内部的逻辑和向外部User以及其身份信息。所以以后所有的设想,都是围绕着这亮点展开。
User,userUtils和UserFactory
User:
这个类现在只提供信息了。没有任何实际性的操作。在我的设想中,User类好像是一个身份识别牌的作用。所以我只在里面封装了ID,Name和password这3个东西。其余的都都封装到了UserInfo,Rolemap中。
构思中,这个User类有两种。一种是只包含简单信息的,UserInfo为空的User,这里称之为简短的User,一种则是UserInfo为不为空的User。这里称之为完整的User。考虑到这两种User要相互装换,并且转换也是很方便的。所以通过一个isBrief()这个方法来进行区分。
这个类为了安全考虑,构造函数都设置成了default
UserFactory:
这个类处理的是User的组装操作。把user,UserInfo何Role这几个类有机的合成一个完整的User,预计希望成为与外部系统沟通的主要类。
所以,这个类的方法,除了获得User的之外。还有给User装填Role和UserInfo的方法。这些方法都是以User为参数。因为希望把这个类写成User,Role和UserInfo的装配工厂
Role
其实这个类是最让我头疼的一个类。因为最初的设想是这是一个接口。比方说一个User,它有一般用户和管理员的功能,我就把这个类设计成,继承抽象的User类,然后实现管理员和用户的接口,谁都知道这个很麻烦。
后来呢,有了Rolemap这个概念之后,我就希望把Role设置成了抽象的。然后各个不同的觉得继承它,把其装入Rolemap。产生这种想法的根源是我希望把各种动作封装到Role中。
后来把整个系统定位成一个身份的提供者之后,现在就统一成了Role类。很简单的一个类,他有一个标示,一个获得标示的方法。外加一个Authoritymap。由于Authority类还在构思之中。所以这里不便继续说了。
UserInfo
这个类很简单。现在位置就碰到一个麻烦。那就是怎么标示其为空。
由于在数据库中,他的ID我设置为从0递增。所以现在我是判断它的id是否为-1.
但是接下来,打算把他的ID设置为UUID,可能需要一个专门的属性来判断了。
各种Uitls类:
这些类的作用我定义的是做为数据库和整个系统的缓冲区。所以和数据库的操作都封装在这些类中。日后加上Hibernate时,我会把这些类大幅度简化。
- 大小: 23.8 KB
分享到:
相关推荐
在这个案例中,系统已经与Upms(统一权限管理系统)进行了打通,实现了用户信息的共享。Upms系统通常用于管理用户的登录、权限分配、角色管理等,与Flowable的结合,确保了业务流程中的操作权限控制和用户认证的一致...
多用户商城系统的核心特点是允许多个商家在同一个平台上开设店铺,各自管理自己的商品和交易,而平台则负责整体运营和维护。 一、多用户商城网站的发展背景与重要性 随着电子商务的持续发展,越来越多的中小企业和...
**多用户**意味着系统可以同时服务于多个独立的用户,每个用户有自己的工作环境和文件权限。为了实现这一点,操作系统需要提供用户账户管理、身份验证和权限控制机制。在本课程设计中,限制了最多五个用户,这涉及到...
在构建自己的Linux系统的过程中,你将深入理解操作系统的工作原理,并且掌握Linux的内核配置、编译以及安装等核心技能。下面将详细讲解这个过程的关键步骤。 首先,我们需要准备一个基础环境,通常选择一个已有的...
【李炎恢 多用户留言系统源代码二(5.5-6.5)】是李炎恢老师针对多用户互动交流场景设计的一款应用程序的源代码。这个系统旨在提供一个平台,让多个用户能够互相留言、交流思想。这部分源代码涵盖了5.5到6.5的开发...
【简单用户管理系统】是一个基于Java Web技术实现的轻量级应用程序,主要目标是提供一个简易的用户管理功能。在这个系统中,`jsp`(JavaServer Pages)被用来作为视图层,负责展示用户数据和交互界面。同时,该系统...
1. **多用户支持**:系统支持多个音乐网站独立使用,每个网站都有自己的统计数据,实现了用户和数据的隔离,确保数据的安全性。 2. **实时统计**:系统能够实时监控网站流量,包括访问量、独立访客数、页面浏览次数...
在这个系统中,每个用户都有自己的账户,能够根据分配的权限访问和操作特定的资源,实现资源共享和协作。 描述中提到的"一款很好的资源共享源码"意味着这个系统可能提供了开源的源代码,允许开发者进行二次开发和...
### 操作系统二级文件系统知识点解析 #### 一、题目背景与目标 在《操作系统》课程设计中,项目的目标是为Linux操作系统设计并实现一个简易的二级文件系统。该文件系统将采用Java语言进行开发,并且包含用户界面,...
《Web考勤管理系统用户使用手册》是一份详细指导用户如何操作和利用Web考勤管理系统的文档,旨在帮助用户高效、准确地完成日常考勤管理任务。以下是对该系统及其使用方法的详细介绍: 一、系统概述 Web考勤管理系统...
用户只有对自己空间中的目录或文件具有权限。 五、流程设计 系统执行流程图包括了系统执行的主要步骤,包括系统初始化、用户登录、文件管理等功能模块。主要模块设计包括了用户管理模块、文件管理模块、目录管理...
2.将源码传至网站根目录,php源码用二进制上传,或者上传压缩包在空间解压 3.将“dkewl.sql”数据库文件导入MySQL数据库 3.将lib\config.inc.php里面的数据库连接信息配置成自己的 账户 密码 教师用户账号:...
普通用户只能访问自己的文件,这要求我们实现基于权限的访问控制,确保用户只能操作属于他们自己的文件和目录,除非有适当的权限提升。 4. 文件操作:包括创建、修改、删除等,这需要实现相应的系统调用,如open、...
- **用户管理**:系统管理员可以维护所有用户信息,普通管理员可以维护特定系统的用户信息,而个人用户只能维护自己的信息。 - **接口提供**:为其他应用系统提供接口,以便它们能够调用权限管理功能。 ##### 3.2 ...
通过研究Linux的文件系统结构,模拟设计一个简单的二级文件系统,第一级为主目录文件,第二级为用户文件。 设定一个超级用户,可以查看整个二级文件系统结构。 普通用户只能根据自己的用户名与密码访问自己的文件与...
【二级文件操作系统】是一种设计用于Linux系统的简单多用户文件系统,其主要目标是让学生通过实践设计,深入理解文件系统的内部工作原理和实现机制。在设计过程中,学生需要结合数据结构、程序设计和计算机原理等多...
在实际应用中,二级域名分发系统可以用于搭建多用户平台,如博客系统,每个用户可以拥有自己的二级域名;也可以用于电商网站,不同分类的商品可以通过二级域名进行区分;甚至可用于在线教育平台,每个课程或讲师都...
Orange's是一个基于x86架构的操作系统,由于渊在其著作《自己动手写操作系统第二版》中详尽阐述了其设计与实现过程。这个随书光盘包含了作者在书中提到的源代码、实验环境和相关资源,是学习操作系统原理与实践操作...
《中国结算网站统一用户系统用户管理手册》是为中国证券登记结算公司挂牌公司的用户管理提供指导的重要文档,旨在规范和优化用户在系统中的操作流程。该手册详细阐述了各种操作步骤和注意事项,确保用户能够高效、...