权限管理系统_毕业论文(值得借鉴)

hello_chen 贡献于2013-05-14

作者 xuanxuan  创建于2010-06-05 02:51:00   修改者Microsoft  修改于2011-05-23 15:26:00字数18220

文档摘要: 了保障办公自动化系统的安全稳定的运行和客户的日常工作需要在系统中添加一个权限管理子系统,权限管理子系统主要是工作机制是根据每个工作人员的职能,为其分配相应的操作权限。对不在工作范围内的操作,系统将通过日志子系统进行记录。本系统采用采用的网页服务器是tomcat,数据库是sqlServer数据库服务器,网页编程语言采用的是时下最为流行的动态网页编程语言jsp。通过jsp的强大的并发处理机制以保障客户日常工作的顺利进行。在网页编程过程中,业务逻辑的处理交给了struts框架技术。通过struts框架中的action实现网页的跳转等操作。在HTML中加入javaScript脚本用来减轻服务器对用户非正常操作的检查负担,并且同时也在某些方面方便了客户的日常操作。本文从需求分析,系统设计,功能模块的划分,具体实现和测试等方面详细的介绍了自动化办公系统子系统权限管理系统的结构和具体实现,同时也简要介绍了一些网页编程技术。
关键词:

2010届本科毕业论文 毕业设计说明书(论文) 作 者: 学 号: 学 院: 系(专业): 题 目: 权限管理系统 指导者: 讲师 评阅者: 2010年5月26日 2010届本科毕业论文 毕业设计(论文)中文摘要 2010届本科毕业论文 权限管理系统 摘要: 天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。为了保障办公自动化系统的安全稳定的运行和客户的日常工作需要在系统中添加一个权限管理子系统,权限管理子系统主要是工作机制是根据每个工作人员的职能,为其分配相应的操作权限。对不在工作范围内的操作,系统将通过日志子系统进行记录。本系统采用采用的网页服务器是tomcat, 数据库是sqlServer数据库服务器,网页编程语言采用的是时下最为流行的动态网页编程语言jsp。通过jsp的强大的并发处理机制以保障客户日常工作的顺利进行。在网页编程过程中,业务逻辑的处理交给了struts框架技术。通过struts框架中的action实现网页的跳转等操作。在HTML中加入javaScript脚本用来减轻服务器对用户非正常操作的检查负担,并且同时也在某些方面方便了客户的日常操作。本文从需求分析,系统设计,功能模块的划分,具体实现和测试等方面详细的介绍了自动化办公系统子系统权限管理系统的结构和具体实现,同时也简要介绍了一些网页编程技术。 关键词:权限管理 jsp jdbc sqlServer struts 2010届本科毕业论文 毕业设计(论文)外文摘要 Title Rights Management Abstract Tianjin Water Conservancy Bureau, the Yongding River Management Office after two years of combing the formation of a set of standardized management thinking, to improve office efficiency and modernization of office, need to create an online office automation systems, in order to form a full set of standardized application of ideas to the actual work. To protect the security and stability of office automation system operation and the daily operational needs of customers in the system management subsystem to add a permission, authority management subsystem mainly working mechanism is based on the functions of each staff member, assigned the appropriate permissions on . Not within the scope of work on the operation, the system will be recorded by logging subsystem. The system is used in web server is tomcat, database is sqlServer database server, web programming language used is nowadays the most popular dynamic web programming language jsp. By jsp powerful concurrent processing mechanism to ensure the smooth progress of clients daily. Web page programming process, the business logic processing technology to the struts framework. Through the struts in the framework of action to achieve the jump page and other operations. Add javaScript in the HTML script used to reduce the server to users of non-normal operation of the inspection burden, and while some aspects are also convenient for the customer's daily operations. This article needs analysis, system design, function modules, the specific aspects of implementation and testing detailed description of the automated office system subsystem rights management system structure and the specific implementation, but also briefly describes some of the web programming. Keywords: Rights Management jsp jdbc sqlServer struts 2010届本科毕业论文 目 次 1 引言 5 1.1 项目背景 5 1.2 目的及意义 5 1.3 论文组织 6 2 需求分析 6 2.1 概述 6 2.2 需求陈述 6 2.3 问题初始分析 7 2.4 初始功能提取 7 2.5 目标系统功能需求 9 3 概要设计 11 3.1 算法概述 11 3.2 总体设计 11 3.3 类设计 15 3.2 数据结构设计 22 4 设计与实现 23 4.1 软件架构 23 4.2 开发工具 24 4.3 数据库连接的实现 26 4.4 数据库的实现 27 5 界面展示 30 5.1 首页展示 30 5.2 权限管理主界面展示 31 结论 35 致谢 36 参考文献 37 附录A 论文所涉及的表索引 38 附录B 论文所涉及的图索引 39 2010届本科毕业论文 1 引言 1.1 项目背景 中国的办公自动化软件系统起源于政府的公文和档案管理。中国社会从计划经济体制转变到现在的市场经济体制,在历史的转变过程中,中国的办公管理形成了具有中国特色一套完整体系。政府对企业的管理,除了依靠法律、法规之外,还有大量的行政指令和指示。企业在进行许多决策的时候,也经常需要向主管的政府部门请示汇报。另外,政府官员和企业领导存在着比较严格的对应关系,即企业领导和政府官员行政级别挂钩,因此在企业应用红头文件就比较自然。 为了保证办公自动化系统的安全稳定的运行,针对每一位用户的级别和工作范围,本系统要对其做好恰当的权限分配,所以权限管理有必要做为办公自动化系统的一个单一子模块运行.权限管理包括 角色管理,组织机构和用户管理等功能,基本上满足了基于角色的权限管理的要求 天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。权限管理系统是自动化办公系统的一个子模块。其主要功能是根据级别,岗位等指定操作人员的权限级别,达到办公自动化系统的安全运行。 1.2 目的及意义 办公自动化系统,依托于网络,将各个办公网点连接到一台或多台服务器上,从而使各个网点经由服务器的统一协调实现联合,高效办公。 历史在进步,网络已经进入到千家万户,并且给人们的生活,工作带来极大的乐趣和效率。在大部分的国内外公司企业和国外的政府部门均通过网络建立起了自己的办公自动化系统,并发挥了重要的作用。作为中国的领导阶层,要充份贯彻党中央与时俱进的思想,把办公自动化系统引入到政府部门的日常工作中。为了保证办公自动化的安全稳定的运行,使工作人员根据自已的职能和权限仅能进行与自己工作有关的操作,就要在办公自动化系统中根据每个人的职能为其分配相应的权限。即权限管理系统。 建立权限管理机制可以保证每个工作人员只能进行自己本职工作范围内的操作,防止进行越权操作,为政府的日常工作提供有效的安全保障。同时有了授权机制,也可以防范无关人员对服务器的非法操作,保证服务器的和长期稳定的运行。 2010届本科毕业论文 1.3 论文组织 第一章是介绍项目的背景和目的,说明开发自动化办公系统的意义和在自动化办公系统中加入权限管理系统的必要性。第二章需求分析,主要对客户的要求简单的概括,利用用例图简要的把用户的需求呈现出来同时在进一步剖析用例图的基础之上又用时序图对系统的运作过程加以描述。第三章是概要设计,主要对第二章的分析结果进行模块划分和数据库的搭建利用类图对各个模块的业务处理类和控制器类进行设计和描述各个类之间的关系。在数据库设计中,利用图表的方式把各个表的结构和表之间的约束关系详细的描述了出来同时把所用到的数据库存储过程依次罗列和实现。第四章主要是对在系统的所应用到的一些技术进行简要的概括同时对数据库的建立给予详细的介绍。第五章是对系统进行展示。主要展示了系统登录首页和权限管理子系统的首界面。 2 需求分析 2.1 概述 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所有功能。因此B/S业务系统都需要有一个或多个权限系统来实现访问权限检测,让经过授权的用户可以正常合法的使用已授权功能,而对那些未经授权的“非法用户”将会将他们彻底的“拒之门外”。 2.2 需求陈述 1) 不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。 2) 可以对“组”进行权限分配。对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系统操作权限的话,是件耗时且不够方便的事情。所以,系统中就提出了对“组”进行操作的概念,将权限一致的人员编入同一组,然后对该组进行权限分配。 2010届本科毕业论文 3) 权限管理系统应该是可扩展的。它应该可以加入到任何带有权限管理功能的系统中。就像是组件一样的可以被不断的重用,而不是每开发一套管理系统,就要针对权限管理部分进行重新开发。 4) 满足业务系统中的功能权限。传统业务系统中,存在着两种权限管理,其一是功能权限的管理,而另外一种则是资源权限的管理,在不同系统之间,功能权限是可以重用的,而资源权限则不能。 2.3 问题初始分析 2.3.1 场景描述 天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。权限管理系统是自动化办公系统的一个子模块。其主要功能是根据级别,岗位等指定操作人员的权限级别,达到办公自动化系统的安全运行。同时要为每一个职工分配相应的权限,如查看本部门工作权限,查看其他部门工作的权限。为了统一的为每一个部门的员工进行管理,要加入权限组,权限组的权限设置和每一个员工的权限设置基本相同,从而可以加快办公效率。当用户密码忘记时可以通过管理员进行密码初始化,同时,为了保护账户的安全,用户可以通过系统修改密码。 2.4 初始功能提取 权限管理系统,是根据每一个工作人员的职能范围,为其分配相应的权利。权限管理系统用例图如图2-1.天津市永定河管理处规范化管理信息系统,是该处的网络自动化办公系统,该系统包括部门管理,岗位管理,资源共享,用户管理和体统参数设置模块。其中用户管理模块就是本论文所讨论的权限管理系统。包括添加修改用户账户,权限修改,权限组修改,密码重置和密码修改。在用户账户修改中,当用户登录系统后可以在用户管理页面进行权限管理操作。在下拉列表中,用户账户修改主要是用来添加用户,修改用户信息,查看用户信息。权限修改,主要是针对当前用户是否可以进入本部门管理页面和是否可以进入其他部门管理界面。还有是否可以进行任务创建和文档创建。而权限组管理比较重要,其主要是以部门为单位,为了统一的对每一个部门的员工进行管理,为每一个部门建立一个权限组,权限组的选项设置和权限的选项设置基本相同。最后的密码重置,要由管理员来进行操作,避免了误操作的可能性。 2010届本科毕业论文 1) 用例说明 表格 21 用例说明 用例说明 用例名称:权限管理   用例标识号:rightsManagement   参与者:职员,上级领导,管理员   简要说明: 用户在权限管理系统上进行权限管理操作。   前置条件:    用户已经登录系统 基本事件流1: 用户登录系统,正确输入用户名和密码进入系统 点击用户管理选项,然后进入用户管理页面 用户选择部门和所属权限组对用户帐户进行检索。 对检索出的用户进行删除和修改其所属部门,岗位,权限组,冻结其帐号。 添加用户帐户,输入用户帐户信息进行添加。 基本事件流2: 用户登录系统,正确输入用户名和密码进入系统 点击用户管理选项,然后进入权限管理页面 用户选择部门,对其部门下的员工进行检索。 对检索出的员工进行权限管理,包括查看和修改。 基本事件流3: 用户登录系统,正确输入用户名和密码进入系统 点击用户管理选项,然后进入权限组管理界面 然后可以对权限组进行添加,删除和修改操作 基本事件流4: 用户登录系统,正确输入用户名和密码进入系统 点击用户管理选项,然后进入密码管理界面 根据用户帐号,对其帐号密码进行重置。 用户输入旧密码和新密码,进行密码修改。    异常事件流:   1. 提示错误信息,用户确认   2. 返回到管理系统主页面 后置条件:    用户操作成功。 注释:用户进行权限管理 2010届本科毕业论文 2) 用例图 为更好的做好这个项目,项目组成员与天津市水利局永定河管理处对天津市水利局永定河管理处进行过多次会议,在多次的调研基础上,进行了详尽的需求分析,下图就是需求分析过程中所画的用例图,这个用例图完全遵循UML2.0标准进行绘制的。非常清楚地展示了系统所应具有的功能,同时也表明了用户之间的关系,以及操作流程。 图表 21 用例图 2.5 目标系统功能需求 2.5.1 功能需求分析 2010届本科毕业论文 表格 22 活动图说明 活动图说明 当用户登录天津市永定河规范化信息管理系统后,输入用户名和密码正确后进入操作页面,如果用户名或密码错误则返回登录首页。在操作页面用户可以进行部门管理,岗位管理,系统参数设置,资源共享和用户管理。我们所介绍的是用户管理。在用户管理下拉菜单下会出现帐户管理,权限管理,权限组管理重置密码和修改密码。在帐户管理页面中用户可以增加用户,删除用户。在权限管理页面下用户可以对检索出来的人员进行权限的增加和修改。在权限组管理页面下用户可以添加和修改权限组。同时用户可以在修改和重置密码也中对密码分别进行修改和重置。 图表 22 活动图 2010届本科毕业论文 3 概要设计 3.1 算法概述 天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。基于这一套规范化思想,结合jsp技术建立起办公自动化系统。本系统代码采用jsp语言,框架采用struts2.0框架,数据库拟采用mysql5.0.利用struts的action技术实现办公的业务逻辑。 3.2 总体设计 本系统在管理关登录后,会进入部门管理,岗位管理,用户管理,资源共享,系统参数设置模块。部门管理主要是对部门各科室基础信息维护,包括“增加,删除,修改”操作。岗位管理主要对岗位的基础信息进行维护,包括“增加,删除,修改”操作。资源共享主要用于论文和资料的上传和下载。系统参数设置主要用于任务提醒和节假日提醒。用户管理是本论文重点,这里所说的用户管理就是权限管理。在权限管理中,包括用户账户的增加,删除,修改,其中用户账户的删除和修改必须先根据用户所属部门和权限组进行搜索,在搜索出的用户中进行操纵,并且用户也要具有相应的账户操作权限。权限管理的第二项功能就是权限管理,用户要根据用户所属部门进行检索,然后在检索出的用户列表中选择所要进行权限管理的用户。此时,管理员可以对其进行权限的修改,所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的下一个功能是权限组管理,在权限组管理界面,管理员可以对权限组进行增加,修改和删除操作,其中所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的最后子功能是密码的修改和重置。主要针对密码安全和遗忘密码所设立的功能。 2.1.1 模块划分 如图3-1所示,天津市水利局永定河管理处规范化管理信息系统主要包括部门管理,岗位管理,用户管理,资源共享,参数设置五大模块。其中用户管理模块就是本论文所讨论的权限管理模块,此模块包括账户管理,权限管理,权限组管理,密码重置,密码修改五个子模块。其他模块由于不再本论文讨论范围之内,所以不予介绍。其中用户账户的删除和修改必须先根据用户所属部门和权限组进行搜索,在搜索出的用户中进行操纵,并且用户也要具有相应的账户操作权限。权限管理的第二项功能就是权限管理,用户要根据用户所属部门进行检索,然后在检索出的用户列表中选择所要进行权限管理的用户。此时,管理员可以对其进行权限的修改,所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的下一个功能是权限组管理,在权限组管理界面,管理员可以对权限组进行增加,修改和删除操作,其中所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的最后子功能是密码的修改和重置。主要针对密码安全和遗忘密码所设立的功能。 2010届本科毕业论文 图表 31 模块划分 2.1.2 模块设计 1) 账户管理时序图 表格 31账户管理时序图说明 账户管理时序图说明 用户正确输入用户名密码后,有jsp控制器接收并和后台用户 进行比较,匹配成功则进入操作主页面。在权限管理主界面如果用户进行对某个用户账户的操作,则首先要根据用户所在部门和所属权限组进行检索。然后对检索出的用户数据进行修改,删除操作。在权限管理主界面用户可以直接进行添加用户账户操作,当然以上操作也要活得相应的操作权限。 2010届本科毕业论文 图表 32 账户管理时序图 2) 权限管理,权限组管理时序图 表格 32 权限管理时序图说明 权限管理时序图说明 本时序图是承接账户管理时序图而成,由于篇幅限制,所以分块进行制作。为了防止累赘,去掉了用户登录模块,但是进行权限管理一定要在登录后进行。在权限管理时序图中,分别描述了权限管理和权限组管理的时序操做。 权限管理,用户点击进入权限管理模块,根据用户所在部门进行检索,控制器通过查询数据库后返回所选部门下的所有用户。这时用户就可以对显示感兴趣的用户权限信息,同时也可以对该用户的权限进行详细的设置,但用户也要具有相应的操作权限。 权限组管理,用户点击进入权限组管理模块,此时系统会显示所有权限组。在当前页面下,用户可以对所选权限组进行修改和删除操作,也可以增加权限组。当然用户要具有相应的操作权限。 2010届本科毕业论文 图表 33 权限管理时序图 3) 修改密码,重置密码时序图 表格 33 密码管理时序图说明 密码时序图说明 本时序图是承接权限管理时序图而成,由于篇幅限制,所以分块进行制作。为了防止累赘,去掉了用户登录模块,但是进行密码管理一定要在登录后进行。在密码管理时序图中,分别描述了重置密码和修改密码时序操作。 重置密码,用户进入重置密码页面,输入要重置密码的用户账号后,点击确认,控制器就会用初始密码替换掉数据库中的当前密码,最后会在页面中显示初始密码。显然用户要具有相应的操作权限。 修改密码,用户进入修改密码页面,输入旧密码和两遍新密码后,点击确认,控制器就会对数据库进行操作,将当前密码替换成新密码。同样用户也要具有相应的操作权限。 2010届本科毕业论文 图表 34密码管理时序图 3.3 类设计 3.1.1 权限管理模块 1) 权限管理业务逻辑类设计 表格 34权限修改业务逻辑类说明 权限修改业务逻辑类说明 权限管理模块包括权限的增加,修改,和删除,这里仅介绍权限修改模块。RightModifyBusiness类是权限修改业务逻辑类,主要是针对权限修改控制器发出修改权限消息,然后权限修改逻辑类相应,并通过JDBC修改数据库信息。他们之间通过Session传递消息,消息的内容存放在Form里,通过UserForm类接收和存储消息。UserForm是ActionForm子类,同时把String类作为自己的私有属性,主要是用于存储各种信息。JvDBO是JDBC连接的主要类,主要用于数据库的连接操作,同时将连接的Connection返回,供RightModifyBusiness使用。 2010届本科毕业论文 图表 35权限修改类图 2) 权限管理控制器类设计 表格 35权限管理控制器类说明 权限显示控制器类说明 权限管理控制器类,用于接收网页(jsp)传来的消息,然后通过调用业务逻辑类进行数据处理,然后根据处理后的情况跳转的不同的页面。这样可以实现复杂的业务逻辑。控制器类是Action的子类,其可以接收网页(jsp)传来的Form表单的数据,同时利用Session进行保存和消息的传递。其依赖的类包括UserForm(进行数据的存储和传递),JvUser(权限操作对象),ActionMapping(主要用于页面的跳转)。在JvDBO类中还把Logger日志类作为自己的私有属性,所以在进行数据操作时,系统会记录相关的操作信息,方便管理员进行维护。 2010届本科毕业论文 图表 36 权限显示类图 3.1.2 用户密码修改模块 1) 用户密码修改业务逻辑类设计 表格 36用户密码修改业务逻辑类说明 用户密码修改业务逻辑类说明 密码操作管理模块涉及密码的修改,重置。这里只针对密码修改模块进行介绍。密码重置的原理和密码修改的原理大同小异,都是对数据库进行相关的操作。PasswordModifyBusiness密码修改业务逻辑主要是为密码修改控制器模块服务的。当密码修改业务逻辑收到控制器类的消息时,当然传递消息的渠道还是Session,载体依然是ActionForm。此时,业务逻辑类会提取Session中的数据跟据控制器的指令进行相关的数据库操作。在数据库操作之前,业务逻辑会进行数据库的连接和认证。 2010届本科毕业论文 图表 37 密码修改业务逻辑图 2) 用户密码修改控制器类设计 表格 37用户密码修改控制器类说明 用户密码修改控制器类说明 密码修改控制器类,是Jsp 网页编程中MVC模块中的control,模块,即控制器模块,主要功能是通过页面传送的消息和指令,通过复杂的后台业务逻辑处理,然后根据处理后的结果,进行相关的页面跳转。所以不同的结果会跳转的同一个页面或者不同的页面,这个完全取决于系统的设定。密码修改控制器收到网页表单里德数据后,会把数据存储在PasswordForm类中,然后通过Session类把数据传送给业务逻辑类进行相关的业务处理,并接收业务逻辑类处理后的结果,根据结果进行页面跳转操作。 2010届本科毕业论文 图表 38 密码修改控制器类图 3.1.3 用户账户管理模块 1) 用户账户管理Bean类设计 表格 38用户账户管理Bean类说明 用户账户管理Bean类说明 最初,JavaBean的目的是为了将可以重复使用的软件代码打包标准。特别是用与帮助厂家开发在综合开发环境(IDE)下使用的java软件部件。这些包括如Grid控件,用户可以将该部件拖放到开发环境中。从此,JavaBean就可以扩展为一个java web 应用的标准部件,并且JavaBean部件框架已经扩展为企业版的 Bean(EJB)。 JavaBean 和 Server Bean(通常称为 Enterprise JavaBean (EJB))有一些基本相同之处。它们都是用一组特性创建,以执行其特定任务的对象或组件。它们还有从当前所驻留服务器上的容器获得其它特性的能力。这使得 bean 的行为根据特定任务和所在环境的不同而有所不同。通过以上介绍,可以把JavaBean理解为数据的载体,JavaBean可以进行数据的存储和传输,器把用户所需要的数据声明为自己的私有属性,然后通过国Set函数和Get函数进行数据的存储和获取。 2010届本科毕业论文 图表 39 用户Bean类图 2) 用户账户管理Form类设计 表格 39用户账户管理Form类说明 用户账户管理Form类说明 ActionForm用于封装用户的请求参数,而请求参数是通过JSP页面的表单域传递过来的。因此应   保证ActionForm的参数,与表单域的名字相同。所有的ActionForm都被配置在struts-config.xml文件中,该文件包括了一个form-beans的元素,该元素内定义了所有ActionForm,每个ActionForm对应一个form-bean元素。可以把Form理解为JavaBean的一种形式,Form主要是当用户把网页里德表单填好后,点击提交按钮,然后网页会把表单里德数据通过Session或Url传送给后台,此时后台会利用ActionForm类进行数据的接收操作。此时ActionForm类的任务就完成了。 图表 310 用户账户管理Form类图 2010届本科毕业论文 3) 用户账户管理业务逻辑类设计 表格 310用户账户删除业务逻辑类说明 用户账户删除业务逻辑类说明 用户账户管理模块,包括用户账户的增加,修改,删除,和现实模块,这里仅以用户账户删除模块进行介绍。其他的模块类结构和本模块结构相同,只是操作上存在差异。用户删除业务逻辑类把日志类Logger加入到了自己的私有属性之中,主要是用于记录管理员在对用户账户进行的一系列操作。方便日后的维护和系统的安全。用户账户操作,依赖于用户类JvUser和用户表单类UserForm。其在接收到用户账户控制器类传来的消息后,会调用JvDBO类进行JDBC连接和数据库操作。实现JSP后台的复杂业务逻辑。 图表 311 用户账户删除业务逻辑类图 4) 用户账户管理控制器类设计 表格 311用户账户管理控制器类说明 用户账户管理控制器类说明 Struts2.0控制器类主要担任了JSP中MVC框架中的Control模块,即控制器模块,用来接受JSP网页传来的数据和消息,然后进行处理,根据处理后的结果进行页面的跳转。从而实现了复杂的业务逻辑。控制器类存放在服务器端,实现语言是Java。所以Jsp网站的可移植性和稳定性都非常的高。用户账户管理控制器类就是用户账户管理模块用于后台处理的功能模块其包括ActionForm类和HttpSerletResponse类用户响应Jsp网页的操作请求,HttpServletRequest用于返回处理后的结果。当然他们的传递渠道都是通过Session来实现的。 2010届本科毕业论文 图表 312 用户账户管理控制器类图 3.2 数据结构设计 3.2.1 数据库表名清单 办公自动化系统所涉及的数据库表有很多,这里只列出与权限管理有关的数据库表。 表格 312数据库表名清单 序号 中文表名 英文表名 表功能说明 1 用户信息表 userInfo 记录用户相关信息 2 日志 logInfo 记录用户登录和操作信息 3 权限组表 rightsTeamInfo 记录对应部门的权限信息 4 权限表 rightsInfo 记录每个工作的权限信息 3.2.2 数据库表之间关系 表格 313 数据库图示说明 图示说明 本系统数据库表包括日志信息表,权限组表,权限信息表,用户信息表。其中日志信息表是独立之外其他表均通过存储过程实现各个表之间的信息同步。其中,当有用户账户修改或增加时,会调用UserModify或UserAdd存储过程保证权限组表和用户信息表的数据同步。当有权限修改时,会调用权限修改存储过程RightModify进行全县信息表和用户信息表的数据一致。其他数据同步道理相同。 2010届本科毕业论文 图表 313 数据库表关系图 3.2.3 存储过程清单 表格 314数据库存储过程清单 序号 中文表名 英文表名 存储过程说明 1 权限组删除 RightTeamDelete 用于删除权限组 2 权限组添加 RightTeamAdd 用于添加权限组 3 权限组修改 RightTeamModify 修改权限组 4 用户账户修改 UserModify 修改用户账户 5 用户账户添加 UserAdd 添加用户账户 6 用户账户删除 UserDelete 删除用户账户 7 权限修改 RightModify 修改权限 8 密码重置 PasswordReset 密码重置 4 设计与实现 4.1 软件架构 5.1.1 B/S概述 2010届本科毕业论文 B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户通过WWW网页浏览器来访问服务器,服务器实现了大部分的业务逻辑,比如数据库的访问,将结果以标准的HTML代码返回给浏览器,浏览器解释执行该HTML代码,呈现给用户,成所谓三层(3-tier)结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。 B/S架构的软件只需要管理服务器端的程序,所有的客户端只是浏览器,不需要做任何的维护。即“瘦客户”和“胖服务器”。这样节省了大量的人力,物力,财力和时间。而且B/S模式开发的软件针对的是服务器端编程,无论采用哪种操作系统,客户端只需拥有浏览器便可以进行管理操作,因此采用更高性能的操作系统而不必局限于客户端的实际配置。 5.1.2 系统网络结构图 图表 4-1系统网络结构图 4.2 开发工具 5.2.1 Jsp简介 JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 2010届本科毕业论文 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。 5.2.2 Struts简介 图表 42 struts简介 1. Client browser(客户浏览器):来自客户浏览器的每个 HTTP 请求创建一个事件。Web 容器将用一个 HTTP 响应作出响应。 2010届本科毕业论文 2. Controller(控制器):控制器接收来自浏览器的请求,并决定将这个请求发往何处。就 Struts 而言,控制器是以 servlet 实现的一个命令设计模式。 struts-config.xml 文件配置控制器命令。 3. 业务逻辑:业务逻辑更新模型的状态,并帮助控制应用程序的流程。 就 Struts 而言,这是通过作为实际业务逻辑“瘦”包装的 Action 类完成的。 4. Model(模型)的状态:模型表示应用程序的状态。业务对象更新应用程序的状态。 ActionForm bean 在会话级或请求级表示模型的状态,而不是在持久级。JSP 文件使用 JSP 标记读取来自 ActionForm bean 的信息。 5. View(视图):视图就是一个 JSP 文件。其中没有流程逻辑,没有业务逻辑,也没有模型信息 —— 只有标记。 标记是使 Struts 有别于其他框架(如 Velocity)的因素之一。 5.2.3 JavaScript简介 Javascript就是适应动态网页制作的需要而诞生的一种新的编程语言,如今越来越广泛地使用于Internet网页制作上。 Javascript是由 Netscape公司开发的一种脚本语言(scripting language),或者称为描述语言。在HTML基础上,使用Javascript可以开发交互式Web网页。Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。 运行用Javascript编写的程序需要能支持Javascript语言的浏览器。Netscape公司 Navigator 3.0以上版本的浏览器都能支持 Javascript程序,微软公司 Internet Explorer 3.0以上版本的浏览器基本上支持Javascript。微软公司还有自己开发的Javascript,称为JScript。 Javascript和Jscript基本上是相同的,只是在一些细节上有出入。 Javascript短小精悍, 又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。 同时它又是专门为制作Web网页而量身定做的一种简单的编程语言。 4.3 数据库连接的实现 5.3.1 Jdbc简介 JDBCTM 是一种用于执行 SQL 语句的 JavaTM API(有意思的是,JDBC 本身是个商标名而不是一个缩写字;然而,JDBC常被认为是代表 “Java 数据库连接 (Java Database Connectivity)”)。它由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。 2010届本科毕业论文 有了 JDBC,向各种关系数据库发送 SQL 语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问 Sybase 数据库专门写一个程序,为访问 Oracle 数据库又专门写一个程序,为访问Informix 数据库又写另一个程序,等等。您只需用 JDBC API 写一个程序就够了,它可向相应数据库发送 SQL 语句。而且,使用 Java 编程语言编写的应用程序,就无须去忧虑要为不同的平台编写不同的应用程序。将 Java 和 JDBC 结合起来将使程序员只须写一遍程序就可让它在任何平台上运行。 Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java 应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet的网页,而该 applet 使用的信息可能来自远程数据库。企业也可以用 JDBC 通过Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Macintosh 和 UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用 Java 编程语言,对从 Java中便捷地访问数据库的要求也在日益增加。 5.3.2 Hibernate简介 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 4.4 数据库的实现 本系统数据库,拟建立在sqlServer2000数据库上。一下语句是数据库表和表之间引用关系的建立过程。 5.4.1 用户信息表 1) 用户信息表图示 2010届本科毕业论文 图表 43用户信息表图示 2) 用户信息表详细介绍 表格 41用户信息表 序号 字段名 字段中文名 数据类型 备注 1 ui_UserId 登录账号 varchar(30) 职工号 ,not null 2 ui_UserPassword 密码 varchar(32) 暗码,最长32,最小为6位 3 ui_UserName 姓名 varchar(10) 用户姓名 4 ui_DepartmentId 所属部门代码 varchar(20) 5 ui_PostId 所在岗位代码 varchar(20) 6 ui_UserState 用户状态 varchar(1) default 1 7 ui_UserRightsTeamId 用户权限组 int 默认为独立权限 8 ui_UserRemark 用户备注 text 用户备注 9 ui_roles 角色 varchar(1) default 0 5.4.2 日志表 1) 日志表图示 图表 44日志表图示 2) 日志表详细介绍 表格 42日志表详细介绍 序号 字段名 字段中文名 数据类型 备注 1 li_LoginOrderId 序号 numeric(18,0) identity(1,1) 2 li_UserId 登录账号 int 3 li_lastloginTime 上次登录时间 datetime 4 li_LoginTime 登录时间 datetime 5 li_LogoffTime 注销时间 datetime 6 li_LoginIp IP地址 varchar(40) 7 li_LogOperation 操作 varchar(100) 2010届本科毕业论文 5.4.3 权限组表 1) 权限组表图示 图表 45权限组表图示 2) 权限组表详细介绍 表格 43 权限组表详细介绍 序号 字段名 字段中文名 数据类型 备注 1 ri_RightTeamId 权限组ID int identity(1,1) 2 ri_RightTeamName 权限组名字 varchar(20) 3 ri_Read 只读权限值 varchar(50) 4 ri_Create 任务创建权限值 varchar(50) 5 ri_Folder 任务归档权限值 varchar(50) 5.4.4 权限表 1) 权限表图示 图表 46权限表图示 2) 权限表详细介绍 表格 44 权限表详细介绍 序号 字段名 字段中文名 数据类型 备注 1 ri_UserId 用户账号 varchar(30) not null 2 ri_Read 只读权限值 varchar(50) 3 ri_Create 创建任务权限值 varchar(50) 4 ri_Folder 任务归档权限值 varchar(50) 2010届本科毕业论文 5 界面展示 5.1 首页展示 1) 首页展示说明 表格 51首页展示说明 首页展示说明 本页是天津市水利局永定河管理处规范化管理信息系统的登录首页。淡蓝色的主体色调使人们不由得想起水源,这样与水利局的工作本质产生呼应。左下方是几张水利局的图片,使人们还没有参观水利局就对那里有了一个大体初步的印象和了解。整个页面亲切自然,并且登录窗口非常明显,但不突兀,和主界面恰如其分的融合到了一起。给人们在访问和工作之前就带来了一个轻松愉快的情绪。 2) 首页图片展示 图表 51首页图片展示 2010届本科毕业论文 5.2 权限管理主界面展示 5.2.1 用户管理界面 1) 用户管理界面说明 表格 52 用户管理主界面说明 用户管理,主要是对用户的账户进行添加,修改和删除。图5-2是通过条件检后所列出的可以进行用户账户修改的账户。图5-3是用户账户的添加页面其中权限组可以不用填写。 2) 用户管理界面图片展示 图表 52 用户管理检索界面 图表 53 添加用户界面 2010届本科毕业论文 5.2.2 权限管理界面 1) 权限管理界面说明 表格 53权限管理主界面说明 权限管理主界面说明 权限管理主要是为用户分配进入部门工作的权限和任务创建和文档创建的权限。图5-4是通过条件检索后所列出的可以进行权限管理的用户。图5-5是对某一个用户进行权限修改。 2) 权限管理界面图片展示 图表 54 权限管理检索页面 图表 55 修改权限页面 2010届本科毕业论文 5.2.3 权限组管理页面 1) 权限组管理页面说明 表格 54 权限组管理界面说明 权限组管理主要以部门为单位,对部门内的员工进行统一的权限管理,但如果员工进行了单独的权限设置后将不再属于这个权限组。图5-6是权限组管理主界面,在这个页面中可以对某个权限组进行详情查看,修改和删除添加操作。 2) 权限组管理页面展示 图表 56 权限组管理页面 2010届本科毕业论文 5.2.4 密码管理页面 1) 密码管理页面说明 表格 55 密码重置界面说明 密码管理包括密码修改和密码重置两大功能,在密码重置中只有管理员才可以操作此功能并且会把重置后的密码显示给用户。密码修改中填入的旧密码是明文形式,因为密码已经过期没必要再进行密文显示了。 2) 密码管理页面展示 图表 57 密码修改页面 图表 58 密码重置页面 2010届本科毕业论文 结论 本文是针对天津市水利局永定河管理处办公自动化项目而编写的,主要是介绍项目里的一个子系统,即权限管理系统。根据管理处历时两年总结的管理经验,项目组利用jsp等技术为其量身打造一套办公自动化平台。为了保证系统的安全稳定的运行,加入了权限管理子系统。这样,有了权限管理,可以根据每个工作人员的工作职能为其分配相应的权限,对违规操作进行记录。这套系统利用了时下最为流行的网页编程语言jsp,通过jsp的稳定安全特性保证系统的健壮性。同时结合struts框架技术和javascript脚本语言是系统能够很好的为客户的日常工作进行服务。 2010届本科毕业论文 致谢 本设计是在老师的精心指导下完成的,从设计的步骤到具体的实现都得到了老师细心的指点,设计每一部分都渗透着老师的心血。在一个学期的时间里,老师用丰富的实践经验、渊博的理论知识培养和教育我,使我的学业长进。老师朴实无华的作风、严谨治学的精神更是深深地影响着我,使我终身收益。在此,向老师表示深深的感谢和崇高的敬意。 最后感谢诸位任课教师对我的培养和教育,在以后的学习生活中我一定更加努力,做一名优秀的毕业生。 河北工业大学2010届本科毕业设计论文 参考文献 [1] Jeffrey D.Ullman, Jennifer Widom. <<数据库系统基础教程(A FIRST COURSE IN DATABASE SYSTEMS)>>. 北京: 机械工业出版社 2008 [2] Rick Greenwald.Oracle. <<高级编程>>. 北京: 清华大学出版社 2007 [3] 陈禹. <<软件开发工具>>. 北京: 经济科学出版社 1999 [4] 唐友国, 湛洪波. <>. 北京: 电子工业出版社 2008 [5] (美)Bruce Eckel著 陈昊鹏译. <>. 北京:机械工业出版社 2007/6 [6] 陈天河. <>. 北京:电子工业出版社 2005 [7] June. <>. 美国: O’Reilly & Associates 2007/8 [8](美)Ted Neward著 方小丽译. << Effective Enterprise Java中文版>>. 北京:机械工业出版社 2005/9 [9] (美) Thomas Kyte著 袁勤勇,张玉魁译. << oracle专家高级编程>>. 北京:清华大学出版社 2002/4 [10] (美) Martin Fowler著 熊节译. <<重构:改善既有代码的设计(软件开发的不朽经典) >>. 北京:人民邮电出版社 2010/4 [11] (印) Dhrubojyoti Kayal著 张平,龚波,李平芳译. << Java EE设计模式:Spring企业级开发最佳实践>> 北京:人民邮电出版社 河北工业大学2010届本科毕业设计论文 附录A 论文所涉及的表索引 表格 21 用例说明 8 表格 22 活动图说明 10 表格 31账户管理时序图说明 12 表格 32 权限管理时序图说明 13 表格 33 密码管理时序图说明 14 表格 34权限修改业务逻辑类说明 15 表格 35权限管理控制器类说明 16 表格 36用户密码修改业务逻辑类说明 17 表格 37用户密码修改控制器类说明 18 表格 38用户账户管理Bean类说明 19 表格 39用户账户管理Form类说明 20 表格 310用户账户删除业务逻辑类说明 21 表格 311用户账户管理控制器类说明 21 表格 312数据库表名清单 22 表格 313 数据库图示说明 22 表格 314数据库存储过程清单 23 表格 41用户信息表 28 表格 42日志表详细介绍 28 表格 43 权限组表详细介绍 29 表格 44 权限表详细介绍 29 表格 51首页展示说明 30 表格 52 31 表格 53权限管理主界面说明 32 表格 54 33 表格 55 34 河北工业大学2010届本科毕业设计论文 附录B 论文所涉及的图索引 图表 21 用例图 9 图表 22 活动图 10 图表 31 模块划分 12 图表 32 账户管理时序图 13 图表 33 权限管理时序图 14 图表 34密码管理时序图 15 图表 35权限修改类图 16 图表 36 权限显示类图 17 图表 37 密码修改业务逻辑图 18 图表 38 密码修改控制器类图 19 图表 39 用户Bean类图 20 图表 310 用户账户管理Form类图 20 图表 311 用户账户删除业务逻辑类图 21 图表 312 用户账户管理控制器类图 22 图表 313 数据库表关系图 23 图表 51首页图片展示 30 图表 52 用户管理检索界面 31 图表 53 添加用户界面 31 图表 54 权限管理检索页面 32 图表 55 修改权限页面 32 图表 56 权限组管理页面 33 图表 57 密码修改页面 34 图表 58 密码重置页面 34

下载文档到电脑,查找使用更方便

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享文档获得金币 ] 3 人已下载

下载文档