毕业设计说明书(论文)-权限管理系统_第1页
毕业设计说明书(论文)-权限管理系统_第2页
毕业设计说明书(论文)-权限管理系统_第3页
毕业设计说明书(论文)-权限管理系统_第4页
毕业设计说明书(论文)-权限管理系统_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2010届本科毕业论文系(专业): 题目:权限管理系统 权限管理系统摘要:天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。为了保障办公自动化系统的安全稳定的运行和客户的日常工作需要在系统中添加一个权限管理子系统,权限管理子系统主要是工作机制是根据每个工作人员的职能,为其分配相应的操作权限。对不在工作范围内的操作,系统将通过日志子系统进行记录。本系统采用采用的网页服务器是tomcat,数据库是sqlServer数据库服务器,网页编程语言采用的是时下最为流行的动态网页编程语言jsp。通过jsp的强大的并发处理机制以保障客户日常工作的顺利进行。在网页编程过程中,业务逻辑的处理交给了struts框架技术。通过struts框架中的action实现网页的跳转等操作。在HTML中加入javaScript脚本用来减轻服务器对用户非正常操作的检查负担,并且同时也在某些方面方便了客户的日常操作。本文从需求分析,系统设计,功能模块的划分,具体实现和测试等方面详细的介绍了自动化办公系统子系统权限管理系统的结构和具体实现,同时也简要介绍了一些网页编程技术。关键词:权限管理jspjdbcsqlServerstruts毕业设计(论文)外文摘要TitleRightsManagementAbstractTianjinWaterConservancyBureau,theYongdingRiverManagementOfficeaftertwoyearsofcombingtheformationofasetofstandardizedmanagementthinking,toimproveofficeefficiencyandmodernizationofoffice,needtocreateanonlineofficeautomationsystems,inordertoformafullsetofstandardizedapplicationofideastotheactualwork.Toprotectthesecurityandstabilityofofficeautomationsystemoperationandthedailyoperationalneedsofcustomersinthesystemmanagementsubsystemtoaddapermission,authoritymanagementsubsystemmainlyworkingmechanismisbasedonthefunctionsofeachstaffmember,assignedtheappropriatepermissionson.Notwithinthescopeofworkontheoperation,thesystemwillberecordedbyloggingsubsystem.Thesystemisusedinwebserveristomcat,databaseissqlServerdatabaseserver,webprogramminglanguageusedisnowadaysthemostpopulardynamicwebprogramminglanguagejsp.Byjsppowerfulconcurrentprocessingmechanismtoensurethesmoothprogressofclientsdaily.Webpageprogrammingprocess,thebusinesslogicprocessingtechnologytothestrutsframework.Throughthestrutsintheframeworkofactiontoachievethejumppageandotheroperations.AddjavaScriptintheHTMLscriptusedtoreducetheservertousersofnon-normaloperationoftheinspectionburden,andwhilesomeaspectsarealsoconvenientforthecustomer'sdailyoperations.Thisarticleneedsanalysis,systemdesign,functionmodules,thespecificaspectsofimplementationandtestingdetaileddescriptionoftheautomatedofficesystemsubsystemrightsmanagementsystemstructureandthespecificimplementation,butalsobrieflydescribessomeofthewebprogramming.Keywords:RightsManagementjspjdbcsqlServerstruts

目次1 引言 51.1 项目背景 51.2 目的及意义 51.3 论文组织 62 需求分析 62.1 概述 62.2 需求陈述 62.3 问题初始分析 72.4 初始功能提取 72.5 目标系统功能需求 93 概要设计 113.1 算法概述 113.2 总体设计 113.3 类设计 153.2 数据结构设计 224设计与实现 234.1 软件架构 234.2 开发工具 244.3 数据库连接的实现 264.4 数据库的实现 275 界面展示 305.1首页展示 305.2 权限管理主界面展示 31结论 35致谢 36参考文献 37附录A论文所涉及的表索引 38附录B论文所涉及的图索引 39引言项目背景 中国的办公自动化软件系统起源于政府的公文和档案管理。中国社会从计划经济体制转变到现在的市场经济体制,在历史的转变过程中,中国的办公管理形成了具有中国特色一套完整体系。政府对企业的管理,除了依靠法律、法规之外,还有大量的行政指令和指示。企业在进行许多决策的时候,也经常需要向主管的政府部门请示汇报。另外,政府官员和企业领导存在着比较严格的对应关系,即企业领导和政府官员行政级别挂钩,因此在企业应用红头文件就比较自然。为了保证办公自动化系统的安全稳定的运行,针对每一位用户的级别和工作范围,本系统要对其做好恰当的权限分配,所以权限管理有必要做为办公自动化系统的一个单一子模块运行.权限管理包括角色管理,组织机构和用户管理等功能,基本上满足了基于角色的权限管理的要求天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。权限管理系统是自动化办公系统的一个子模块。其主要功能是根据级别,岗位等指定操作人员的权限级别,达到办公自动化系统的安全运行。目的及意义办公自动化系统,依托于网络,将各个办公网点连接到一台或多台服务器上,从而使各个网点经由服务器的统一协调实现联合,高效办公。 历史在进步,网络已经进入到千家万户,并且给人们的生活,工作带来极大的乐趣和效率。在大部分的国内外公司企业和国外的政府部门均通过网络建立起了自己的办公自动化系统,并发挥了重要的作用。作为中国的领导阶层,要充份贯彻党中央与时俱进的思想,把办公自动化系统引入到政府部门的日常工作中。为了保证办公自动化的安全稳定的运行,使工作人员根据自已的职能和权限仅能进行与自己工作有关的操作,就要在办公自动化系统中根据每个人的职能为其分配相应的权限。即权限管理系统。 建立权限管理机制可以保证每个工作人员只能进行自己本职工作范围内的操作,防止进行越权操作,为政府的日常工作提供有效的安全保障。同时有了授权机制,也可以防范无关人员对服务器的非法操作,保证服务器的和长期稳定的运行。论文组织第一章是介绍项目的背景和目的,说明开发自动化办公系统的意义和在自动化办公系统中加入权限管理系统的必要性。第二章需求分析,主要对客户的要求简单的概括,利用用例图简要的把用户的需求呈现出来同时在进一步剖析用例图的基础之上又用时序图对系统的运作过程加以描述。第三章是概要设计,主要对第二章的分析结果进行模块划分和数据库的搭建利用类图对各个模块的业务处理类和控制器类进行设计和描述各个类之间的关系。在数据库设计中,利用图表的方式把各个表的结构和表之间的约束关系详细的描述了出来同时把所用到的数据库存储过程依次罗列和实现。第四章主要是对在系统的所应用到的一些技术进行简要的概括同时对数据库的建立给予详细的介绍。第五章是对系统进行展示。主要展示了系统登录首页和权限管理子系统的首界面。需求分析概述B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所有功能。因此B/S业务系统都需要有一个或多个权限系统来实现访问权限检测,让经过授权的用户可以正常合法的使用已授权功能,而对那些未经授权的“非法用户”将会将他们彻底的“拒之门外”。需求陈述不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。可以对“组”进行权限分配。对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系统操作权限的话,是件耗时且不够方便的事情。所以,系统中就提出了对“组”进行操作的概念,将权限一致的人员编入同一组,然后对该组进行权限分配。权限管理系统应该是可扩展的。它应该可以加入到任何带有权限管理功能的系统中。就像是组件一样的可以被不断的重用,而不是每开发一套管理系统,就要针对权限管理部分进行重新开发。满足业务系统中的功能权限。传统业务系统中,存在着两种权限管理,其一是功能权限的管理,而另外一种则是资源权限的管理,在不同系统之间,功能权限是可以重用的,而资源权限则不能。问题初始分析2.3.1场景描述天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。权限管理系统是自动化办公系统的一个子模块。其主要功能是根据级别,岗位等指定操作人员的权限级别,达到办公自动化系统的安全运行。同时要为每一个职工分配相应的权限,如查看本部门工作权限,查看其他部门工作的权限。为了统一的为每一个部门的员工进行管理,要加入权限组,权限组的权限设置和每一个员工的权限设置基本相同,从而可以加快办公效率。当用户密码忘记时可以通过管理员进行密码初始化,同时,为了保护账户的安全,用户可以通过系统修改密码。初始功能提取权限管理系统,是根据每一个工作人员的职能范围,为其分配相应的权利。权限管理系统用例图如图2-1.天津市永定河管理处规范化管理信息系统,是该处的网络自动化办公系统,该系统包括部门管理,岗位管理,资源共享,用户管理和体统参数设置模块。其中用户管理模块就是本论文所讨论的权限管理系统。包括添加修改用户账户,权限修改,权限组修改,密码重置和密码修改。在用户账户修改中,当用户登录系统后可以在用户管理页面进行权限管理操作。在下拉列表中,用户账户修改主要是用来添加用户,修改用户信息,查看用户信息。权限修改,主要是针对当前用户是否可以进入本部门管理页面和是否可以进入其他部门管理界面。还有是否可以进行任务创建和文档创建。而权限组管理比较重要,其主要是以部门为单位,为了统一的对每一个部门的员工进行管理,为每一个部门建立一个权限组,权限组的选项设置和权限的选项设置基本相同。最后的密码重置,要由管理员来进行操作,避免了误操作的可能性。用例说明表格STYLEREF1\s2SEQ表格\*ARABIC\s11用例说明用例说明用例名称:权限管理用例标识号:rightsManagement参与者:职员,上级领导,管理员简要说明:用户在权限管理系统上进行权限管理操作。前置条件:用户已经登录系统基本事件流1:用户登录系统,正确输入用户名和密码进入系统点击用户管理选项,然后进入用户管理页面用户选择部门和所属权限组对用户帐户进行检索。对检索出的用户进行删除和修改其所属部门,岗位,权限组,冻结其帐号。添加用户帐户,输入用户帐户信息进行添加。基本事件流2:用户登录系统,正确输入用户名和密码进入系统点击用户管理选项,然后进入权限管理页面用户选择部门,对其部门下的员工进行检索。对检索出的员工进行权限管理,包括查看和修改。基本事件流3:用户登录系统,正确输入用户名和密码进入系统点击用户管理选项,然后进入权限组管理界面然后可以对权限组进行添加,删除和修改操作基本事件流4:用户登录系统,正确输入用户名和密码进入系统点击用户管理选项,然后进入密码管理界面根据用户帐号,对其帐号密码进行重置。用户输入旧密码和新密码,进行密码修改。异常事件流:1.提示错误信息,用户确认2.返回到管理系统主页面后置条件:用户操作成功。注释:用户进行权限管理用例图为更好的做好这个项目,项目组成员与天津市水利局永定河管理处对天津市水利局永定河管理处进行过多次会议,在多次的调研基础上,进行了详尽的需求分析,下图就是需求分析过程中所画的用例图,这个用例图完全遵循UML2.0标准进行绘制的。非常清楚地展示了系统所应具有的功能,同时也表明了用户之间的关系,以及操作流程。图表STYLEREF1\s2SEQ图表\*ARABIC\s11用例图目标系统功能需求2.5.1功能需求分析表格STYLEREF1\s2SEQ表格\*ARABIC\s12活动图说明活动图说明当用户登录天津市永定河规范化信息管理系统后,输入用户名和密码正确后进入操作页面,如果用户名或密码错误则返回登录首页。在操作页面用户可以进行部门管理,岗位管理,系统参数设置,资源共享和用户管理。我们所介绍的是用户管理。在用户管理下拉菜单下会出现帐户管理,权限管理,权限组管理重置密码和修改密码。在帐户管理页面中用户可以增加用户,删除用户。在权限管理页面下用户可以对检索出来的人员进行权限的增加和修改。在权限组管理页面下用户可以添加和修改权限组。同时用户可以在修改和重置密码也中对密码分别进行修改和重置。图表STYLEREF1\s2SEQ图表\*ARABIC\s12活动图概要设计算法概述天津水利局永定河管理处经过两年的梳理形成了一套规范化的管理思想,为了提高办公效率,实现现代化办公,需要建立一个在线自动化办公系统,以便把形成的这套规范化思想充份的运用到实际的工作中去。基于这一套规范化思想,结合jsp技术建立起办公自动化系统。本系统代码采用jsp语言,框架采用struts2.0框架,数据库拟采用mysql5.0.利用struts的action技术实现办公的业务逻辑。总体设计本系统在管理关登录后,会进入部门管理,岗位管理,用户管理,资源共享,系统参数设置模块。部门管理主要是对部门各科室基础信息维护,包括“增加,删除,修改”操作。岗位管理主要对岗位的基础信息进行维护,包括“增加,删除,修改”操作。资源共享主要用于论文和资料的上传和下载。系统参数设置主要用于任务提醒和节假日提醒。用户管理是本论文重点,这里所说的用户管理就是权限管理。在权限管理中,包括用户账户的增加,删除,修改,其中用户账户的删除和修改必须先根据用户所属部门和权限组进行搜索,在搜索出的用户中进行操纵,并且用户也要具有相应的账户操作权限。权限管理的第二项功能就是权限管理,用户要根据用户所属部门进行检索,然后在检索出的用户列表中选择所要进行权限管理的用户。此时,管理员可以对其进行权限的修改,所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的下一个功能是权限组管理,在权限组管理界面,管理员可以对权限组进行增加,修改和删除操作,其中所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的最后子功能是密码的修改和重置。主要针对密码安全和遗忘密码所设立的功能。2.1.1模块划分如图3-1所示,天津市水利局永定河管理处规范化管理信息系统主要包括部门管理,岗位管理,用户管理,资源共享,参数设置五大模块。其中用户管理模块就是本论文所讨论的权限管理模块,此模块包括账户管理,权限管理,权限组管理,密码重置,密码修改五个子模块。其他模块由于不再本论文讨论范围之内,所以不予介绍。其中用户账户的删除和修改必须先根据用户所属部门和权限组进行搜索,在搜索出的用户中进行操纵,并且用户也要具有相应的账户操作权限。权限管理的第二项功能就是权限管理,用户要根据用户所属部门进行检索,然后在检索出的用户列表中选择所要进行权限管理的用户。此时,管理员可以对其进行权限的修改,所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的下一个功能是权限组管理,在权限组管理界面,管理员可以对权限组进行增加,修改和删除操作,其中所涉及的权限包括任务创建权限,任务归档权限,可读权限。权限管理的最后子功能是密码的修改和重置。主要针对密码安全和遗忘密码所设立的功能。图表STYLEREF1\s3SEQ图表\*ARABIC\s11模块划分2.1.2模块设计账户管理时序图表格STYLEREF1\s3SEQ表格\*ARABIC\s11账户管理时序图说明账户管理时序图说明用户正确输入用户名密码后,有jsp控制器接收并和后台用户进行比较,匹配成功则进入操作主页面。在权限管理主界面如果用户进行对某个用户账户的操作,则首先要根据用户所在部门和所属权限组进行检索。然后对检索出的用户数据进行修改,删除操作。在权限管理主界面用户可以直接进行添加用户账户操作,当然以上操作也要活得相应的操作权限。图表STYLEREF1\s3SEQ图表\*ARABIC\s12账户管理时序图权限管理,权限组管理时序图表格STYLEREF1\s3SEQ表格\*ARABIC\s12权限管理时序图说明权限管理时序图说明本时序图是承接账户管理时序图而成,由于篇幅限制,所以分块进行制作。为了防止累赘,去掉了用户登录模块,但是进行权限管理一定要在登录后进行。在权限管理时序图中,分别描述了权限管理和权限组管理的时序操做。权限管理,用户点击进入权限管理模块,根据用户所在部门进行检索,控制器通过查询数据库后返回所选部门下的所有用户。这时用户就可以对显示感兴趣的用户权限信息,同时也可以对该用户的权限进行详细的设置,但用户也要具有相应的操作权限。权限组管理,用户点击进入权限组管理模块,此时系统会显示所有权限组。在当前页面下,用户可以对所选权限组进行修改和删除操作,也可以增加权限组。当然用户要具有相应的操作权限。图表STYLEREF1\s3SEQ图表\*ARABIC\s13权限管理时序图修改密码,重置密码时序图表格STYLEREF1\s3SEQ表格\*ARABIC\s13密码管理时序图说明密码时序图说明本时序图是承接权限管理时序图而成,由于篇幅限制,所以分块进行制作。为了防止累赘,去掉了用户登录模块,但是进行密码管理一定要在登录后进行。在密码管理时序图中,分别描述了重置密码和修改密码时序操作。重置密码,用户进入重置密码页面,输入要重置密码的用户账号后,点击确认,控制器就会用初始密码替换掉数据库中的当前密码,最后会在页面中显示初始密码。显然用户要具有相应的操作权限。修改密码,用户进入修改密码页面,输入旧密码和两遍新密码后,点击确认,控制器就会对数据库进行操作,将当前密码替换成新密码。同样用户也要具有相应的操作权限。图表STYLEREF1\s3SEQ图表\*ARABIC\s14密码管理时序图类设计权限管理模块权限管理业务逻辑类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s14权限修改业务逻辑类说明权限修改业务逻辑类说明权限管理模块包括权限的增加,修改,和删除,这里仅介绍权限修改模块。RightModifyBusiness类是权限修改业务逻辑类,主要是针对权限修改控制器发出修改权限消息,然后权限修改逻辑类相应,并通过JDBC修改数据库信息。他们之间通过Session传递消息,消息的内容存放在Form里,通过UserForm类接收和存储消息。UserForm是ActionForm子类,同时把String类作为自己的私有属性,主要是用于存储各种信息。JvDBO是JDBC连接的主要类,主要用于数据库的连接操作,同时将连接的Connection返回,供RightModifyBusiness使用。图表STYLEREF1\s3SEQ图表\*ARABIC\s15权限修改类图权限管理控制器类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s15权限管理控制器类说明权限显示控制器类说明权限管理控制器类,用于接收网页(jsp)传来的消息,然后通过调用业务逻辑类进行数据处理,然后根据处理后的情况跳转的不同的页面。这样可以实现复杂的业务逻辑。控制器类是Action的子类,其可以接收网页(jsp)传来的Form表单的数据,同时利用Session进行保存和消息的传递。其依赖的类包括UserForm(进行数据的存储和传递),JvUser(权限操作对象),ActionMapping(主要用于页面的跳转)。在JvDBO类中还把Logger日志类作为自己的私有属性,所以在进行数据操作时,系统会记录相关的操作信息,方便管理员进行维护。图表STYLEREF1\s3SEQ图表\*ARABIC\s16权限显示类图3.1.2用户密码修改模块用户密码修改业务逻辑类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s16用户密码修改业务逻辑类说明用户密码修改业务逻辑类说明密码操作管理模块涉及密码的修改,重置。这里只针对密码修改模块进行介绍。密码重置的原理和密码修改的原理大同小异,都是对数据库进行相关的操作。PasswordModifyBusiness密码修改业务逻辑主要是为密码修改控制器模块服务的。当密码修改业务逻辑收到控制器类的消息时,当然传递消息的渠道还是Session,载体依然是ActionForm。此时,业务逻辑类会提取Session中的数据跟据控制器的指令进行相关的数据库操作。在数据库操作之前,业务逻辑会进行数据库的连接和认证。图表STYLEREF1\s3SEQ图表\*ARABIC\s17密码修改业务逻辑图用户密码修改控制器类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s17用户密码修改控制器类说明用户密码修改控制器类说明密码修改控制器类,是Jsp网页编程中MVC模块中的control,模块,即控制器模块,主要功能是通过页面传送的消息和指令,通过复杂的后台业务逻辑处理,然后根据处理后的结果,进行相关的页面跳转。所以不同的结果会跳转的同一个页面或者不同的页面,这个完全取决于系统的设定。密码修改控制器收到网页表单里德数据后,会把数据存储在PasswordForm类中,然后通过Session类把数据传送给业务逻辑类进行相关的业务处理,并接收业务逻辑类处理后的结果,根据结果进行页面跳转操作。图表STYLEREF1\s3SEQ图表\*ARABIC\s18密码修改控制器类图3.1.3用户账户管理模块用户账户管理Bean类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s18用户账户管理Bean类说明用户账户管理Bean类说明最初,JavaBean的目的是为了将可以重复使用的软件代码打包标准。特别是用与帮助厂家开发在综合开发环境(IDE)下使用的java软件部件。这些包括如Grid控件,用户可以将该部件拖放到开发环境中。从此,JavaBean就可以扩展为一个javaweb应用的标准部件,并且JavaBean部件框架已经扩展为企业版的Bean(EJB)。JavaBean和ServerBean(通常称为EnterpriseJavaBean(EJB))有一些基本相同之处。它们都是用一组特性创建,以执行其特定任务的对象或组件。它们还有从当前所驻留服务器上的容器获得其它特性的能力。这使得bean的行为根据特定任务和所在环境的不同而有所不同。通过以上介绍,可以把JavaBean理解为数据的载体,JavaBean可以进行数据的存储和传输,器把用户所需要的数据声明为自己的私有属性,然后通过国Set函数和Get函数进行数据的存储和获取。图表STYLEREF1\s3SEQ图表\*ARABIC\s19用户Bean类图用户账户管理Form类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s19用户账户管理Form类说明用户账户管理Form类说明ActionForm用于封装用户的请求参数,而请求参数是通过JSP页面的表单域传递过来的。因此应保证ActionForm的参数,与表单域的名字相同。所有的ActionForm都被配置在struts-config.xml文件中,该文件包括了一个form-beans的元素,该元素内定义了所有ActionForm,每个ActionForm对应一个form-bean元素。可以把Form理解为JavaBean的一种形式,Form主要是当用户把网页里德表单填好后,点击提交按钮,然后网页会把表单里德数据通过Session或Url传送给后台,此时后台会利用ActionForm类进行数据的接收操作。此时ActionForm类的任务就完成了。图表STYLEREF1\s3SEQ图表\*ARABIC\s110用户账户管理Form类图用户账户管理业务逻辑类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s110用户账户删除业务逻辑类说明用户账户删除业务逻辑类说明用户账户管理模块,包括用户账户的增加,修改,删除,和现实模块,这里仅以用户账户删除模块进行介绍。其他的模块类结构和本模块结构相同,只是操作上存在差异。用户删除业务逻辑类把日志类Logger加入到了自己的私有属性之中,主要是用于记录管理员在对用户账户进行的一系列操作。方便日后的维护和系统的安全。用户账户操作,依赖于用户类JvUser和用户表单类UserForm。其在接收到用户账户控制器类传来的消息后,会调用JvDBO类进行JDBC连接和数据库操作。实现JSP后台的复杂业务逻辑。图表STYLEREF1\s3SEQ图表\*ARABIC\s111用户账户删除业务逻辑类图用户账户管理控制器类设计表格STYLEREF1\s3SEQ表格\*ARABIC\s111用户账户管理控制器类说明用户账户管理控制器类说明Struts2.0控制器类主要担任了JSP中MVC框架中的Control模块,即控制器模块,用来接受JSP网页传来的数据和消息,然后进行处理,根据处理后的结果进行页面的跳转。从而实现了复杂的业务逻辑。控制器类存放在服务器端,实现语言是Java。所以Jsp网站的可移植性和稳定性都非常的高。用户账户管理控制器类就是用户账户管理模块用于后台处理的功能模块其包括ActionForm类和HttpSerletResponse类用户响应Jsp网页的操作请求,HttpServletRequest用于返回处理后的结果。当然他们的传递渠道都是通过Session来实现的。图表STYLEREF1\s3SEQ图表\*ARABIC\s112用户账户管理控制器类图数据结构设计3.2.1数据库表名清单办公自动化系统所涉及的数据库表有很多,这里只列出与权限管理有关的数据库表。表格STYLEREF1\s3SEQ表格\*ARABIC\s112数据库表名清单序号中文表名英文表名表功能说明1用户信息表userInfo记录用户相关信息2日志logInfo记录用户登录和操作信息3权限组表rightsTeamInfo记录对应部门的权限信息权限表rightsInfo记录每个工作的权限信息3.2.2数据库表之间关系表格STYLEREF1\s3SEQ表格\*ARABIC\s113数据库图示说明图示说明本系统数据库表包括日志信息表,权限组表,权限信息表,用户信息表。其中日志信息表是独立之外其他表均通过存储过程实现各个表之间的信息同步。其中,当有用户账户修改或增加时,会调用UserModify或UserAdd存储过程保证权限组表和用户信息表的数据同步。当有权限修改时,会调用权限修改存储过程RightModify进行全县信息表和用户信息表的数据一致。其他数据同步道理相同。图表STYLEREF1\s3SEQ图表\*ARABIC\s113数据库表关系图3.2.3存储过程清单表格STYLEREF1\s3SEQ表格\*ARABIC\s114数据库存储过程清单序号中文表名英文表名存储过程说明1权限组删除RightTeamDelete用于删除权限组2权限组添加RightTeamAdd用于添加权限组3权限组修改RightTeamModify修改权限组4用户账户修改UserModify修改用户账户5用户账户添加UserAdd添加用户账户6用户账户删除UserDelete删除用户账户7权限修改RightModify修改权限8密码重置PasswordReset密码重置4设计与实现软件架构5.1.1B/S概述B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户通过WWW网页浏览器来访问服务器,服务器实现了大部分的业务逻辑,比如数据库的访问,将结果以标准的HTML代码返回给浏览器,浏览器解释执行该HTML代码,呈现给用户,成所谓三层(3-tier)结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。B/S架构的软件只需要管理服务器端的程序,所有的客户端只是浏览器,不需要做任何的维护。即“瘦客户”和“胖服务器”。这样节省了大量的人力,物力,财力和时间。而且B/S模式开发的软件针对的是服务器端编程,无论采用哪种操作系统,客户端只需拥有浏览器便可以进行管理操作,因此采用更高性能的操作系统而不必局限于客户端的实际配置。5.1.2系统网络结构图图表4-1系统网络结构图开发工具5.2.1Jsp简介JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。5.2.2Struts简介图表42struts简介Clientbrowser(客户浏览器):来自客户浏览器的每个HTTP请求创建一个事件。Web容器将用一个HTTP响应作出响应。Controller(控制器):控制器接收来自浏览器的请求,并决定将这个请求发往何处。就Struts而言,控制器是以servlet实现的一个命令设计模式。struts-config.xml文件配置控制器命令。业务逻辑:业务逻辑更新模型的状态,并帮助控制应用程序的流程。就Struts而言,这是通过作为实际业务逻辑“瘦”包装的Action类完成的。Model(模型)的状态:模型表示应用程序的状态。业务对象更新应用程序的状态。ActionFormbean在会话级或请求级表示模型的状态,而不是在持久级。JSP文件使用JSP标记读取来自ActionFormbean的信息。View(视图):视图就是一个JSP文件。其中没有流程逻辑,没有业务逻辑,也没有模型信息——只有标记。标记是使Struts有别于其他框架(如Velocity)的因素之一。5.2.3JavaScript简介Javascript就是适应动态网页制作的需要而诞生的一种新的编程语言,如今越来越广泛地使用于Internet网页制作上。Javascript是由Netscape公司开发的一种脚本语言(scriptinglanguage),或者称为描述语言。在HTML基础上,使用Javascript可以开发交互式Web网页。Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。运行用Javascript编写的程序需要能支持Javascript语言的浏览器。Netscape公司Navigator3.0以上版本的浏览器都能支持Javascript程序,微软公司InternetExplorer3.0以上版本的浏览器基本上支持Javascript。微软公司还有自己开发的Javascript,称为JScript。Javascript和Jscript基本上是相同的,只是在一些细节上有出入。Javascript短小精悍,又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。同时它又是专门为制作Web网页而量身定做的一种简单的编程语言。数据库连接的实现5.3.1Jdbc简介JDBCTM是一种用于执行SQL语句的JavaTMAPI(有意思的是,JDBC本身是个商标名而不是一个缩写字;然而,JDBC常被认为是代表“Java数据库连接(JavaDatabaseConnectivity)”)。它由一组用Java编程语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,使他们能够用纯JavaAPI来编写数据库应用程序。有了JDBC,向各种关系数据库发送SQL语句就是一件很容易的事。换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,为访问Informix数据库又写另一个程序,等等。您只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL语句。而且,使用Java编程语言编写的应用程序,就无须去忧虑要为不同的平台编写不同的应用程序。将Java和JDBC结合起来将使程序员只须写一遍程序就可让它在任何平台上运行。Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。而JDBC正是作为此种用途的机制。JDBC扩展了Java的功能。例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库。企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。5.3.2Hibernate简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。数据库的实现本系统数据库,拟建立在sqlServer2000数据库上。一下语句是数据库表和表之间引用关系的建立过程。5.4.1用户信息表用户信息表图示图表43用户信息表图示用户信息表详细介绍表格4SEQ表格\*ARABIC\s11用户信息表序号字段名字段中文名数据类型备注1ui_UserId登录账号varchar(30)职工号,notnull2ui_UserPassword密码varchar(32)暗码,最长32,最小为6位3ui_UserName姓名varchar(10)用户姓名4ui_DepartmentId所属部门代码varchar(20)5ui_PostId所在岗位代码varchar(20)6ui_UserState用户状态varchar(1)default17ui_UserRightsTeamId用户权限组int默认为独立权限8ui_UserRemark用户备注text用户备注9ui_roles角色varchar(1)default05.4.2日志表日志表图示图表44日志表图示日志表详细介绍表格4SEQ表格\*ARABIC\s12日志表详细介绍序号字段名字段中文名数据类型备注1li_LoginOrderId序号numeric(18,0)identity(1,1)2li_UserId登录账号int3li_lastloginTime上次登录时间datetime4li_LoginTime登录时间datetime5li_LogoffTime注销时间datetime6li_LoginIpIP地址varchar(40)7li_LogOperation操作varchar(100)5.4.3权限组表权限组表图示图表45权限组表图示权限组表详细介绍表格4SEQ表格\*ARABIC\s13权限组表详细介绍序号字段名字段中文名数据类型备注1ri_RightTeamId权限组IDintidentity(1,1)2ri_RightTeamName权限组名字varchar(20)3ri_Read只读权限值varchar(50)4ri_Create任务创建权限值varchar(50)5ri_Folder任务归档权限值varchar(50)5.4.4权限表权限表图示图表46权限表图示权限表详细介绍表格4SEQ表格\*ARABIC\s14权限表详细介绍序号字段名字段中文名数据类型备注1ri_UserId用户账号varchar(30)notnull2ri_Read只读权限值varchar(50)3ri_Create创建任务权限值varchar(50)4ri_Folder任务归档权限值varchar(50)界面展示5.1首页展示首页展示说明表格STYLEREF1\s5SEQ表格\*ARABIC\s11首页展示说明首页展示说明本页是天津市水利局永定河管理处规范化管理信息系统的登录首页。淡蓝色的主体色调使人们不由得想起水源,这样与水利局的工作本质产生呼应。左下方是几张水利局的图片,使人们还没有参观水利局就对那里有了一个大体初步的印象和了解。整个页面亲切自然,并且登录窗口非常明显,但不突兀,和主界面恰如其分的融合到了一起。给人们在访问和工作之前就带来了一个轻松愉快的情绪。首页图片展示图表STYLEREF1\s5SEQ图表\*ARABIC\s11首页图片展示权限管理主界面展示用户管理界面用户管理界面说明表格STYLEREF1\s5SEQ表格\*ARABIC\s12用户管理主界面说明用户管理,主要是对用户的账户进行添加,修改和删除。图5-2是通过条件检后所列出的可以进行用户账户修改的账户。图5-3是用户账户的添加页面其中权限组可以不用填写。用户管理界面图片展示图表STYLEREF1\s5SEQ图表\*ARABIC\s12用户管理检索界面图表STYLEREF1\s5SEQ图表\*ARABIC\s13添加用户界面权限管理界面权限管理界面说明表格STYLEREF1\s5SEQ表格\*ARABIC\s13权限管理主界面说明权限管理主界面说明权限管理主要是为用户分配进入部门工作的权限和任务创建和文档创建的权限。图5-4是通过条件检索后所列出的可以进行权限管理的用户。图5-5是对某一个用户进行权限修改。权限管理界面图片展示图表STYLEREF1\s5SEQ图表\*ARABIC\s14权限管理检索页面图表STYLEREF1\s5SEQ图表\*ARABIC\s15修改权限页面权限组管理页面权限组管理页面说明表格STYLEREF1\s5SEQ表格\*ARABIC\s14权限组管理界面说明权限组管理主要以部门为单位,对部门内的员工进行统一的权限管理,但如果员工进行了单独的权限设置后将不再属于这个权限组。图5-6是权限组管理主界面,在这个页面中可以对某个权限组进行详情查看,修改和删除添加操作。权限组管理页面展示图表STYLEREF1\s5SEQ图表\*ARABIC\s16权限组管理页面密码管理页面密码管理页面说明表格STYLEREF1\s5SEQ表格\*ARABIC\s15密码重置界面说明密码管理包括密码修改和密码重置两大功能,在密码重置中只有管理员才可以操作此功能并且会把重置后的密码显示给用户。密码修改中填入的旧密码是明文形式,因为密码已经过期没必要再进行密文显示了。密码管理页面展示图表STYLEREF1\s5SEQ图表\*ARABIC\s17密码修改页面图表STYLEREF1\s5SEQ图表\*ARABIC\s18密码重置页面结论本文是针对天津市水利局永定河管理处办公自动化项目而编写的,主要是介绍项目里的一个子系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论