欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    权限管理系统(共9页).doc

    • 资源ID:14367058       资源大小:168KB        全文页数:9页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    权限管理系统(共9页).doc

    精选优质文档-倾情为你奉上权限管理系统一、 系统功能分析 1. 系统的功能模块系统主要完成权限授予及权限验证的功能,权限授予实现某个用户对模块的某个功能的操作许可,组成权限数据库。为用户分配角色来实现授权。权限验证实现通过实现定义好的权限数据库,判断该用户是否对某个模块的某个功能具有操作权限,权限验证采用过滤器来设计,用户在应用系统中进行所有操作都需要经过这一层过滤器。系统设计包括以下5个模块:Ø 人员管理:创建、更新、删除、查询人员信息、人员角色维护。Ø 功能管理:创建、更新、删除、查询功能信息。Ø 模块管理:创建、更新、删除、查询模块信息、模块功能维护。Ø 角色管理:创建、更新、删除、查询角色信息、角色权限维护。Ø 验证权限:判断用户对某一个模块的操作是否合法。图 1系统功能结构图2. 技术选型系统采用业界常用的J2EE框架进行组合。要求成熟稳定的系统框架以满足系统的松耦合性、扩张性和可维护性。权限管理系统采用Struts+Hibernate+Spring三种框架组合开发。表示层和控制层框架:选择业界广泛使用而且成熟稳定的Struts。业务逻辑层框架:选择轻量级Spring Framework。持久层框架:选择Hibernate。3. 系统逻辑结构分析系统采用Struts+Hibernate+Spring架构进行开发。在体系结构上将系统划分为四个层次:表示层、控制层、业务层、持久层。表示层和控制层融合紧密,采用struts框架;持久层采用Hibernate框架;业务层和持久层统一使用spring框架支撑。Struts框架接收来自表示层请求“xxxAction.do”,请求参数封装在“xxxForm”中,struts依据配置信息调用控制层实例“xxxAction”的相关方法,该方法从“xxxForm”中取回请求参数,并从Spring Bean容器中获取业务层接口“xxxManager”的一个实例“xxxManagerImpl”。在Spring Bean容器初始化“xxxManagerImpl”实例时,会根据beanid=“xxxDAO”获取对应的“xxxDAO”的一个实例,并赋值给“xxxManagerImpl”的“xxxDAO”接口。xxxManagerImpl实例会调用持久层接口“xxxDAO”实例的方法完成具体的操作,并返回操作结果。图 2权限管理模型结构图Ø 表示层(view):表示层主要负责在前台JSP页面上展示控制层提供的数据,提供操作界面,将用户的操作请求提交给控制层。Ø 控制层(Controller):控制具体的业务流程。接受来自表示层的用户操作请求,调用业务层的接口完成用户请求的处理,并将处理结果和数据保存到request对象中,控制流程转向表示层输出处理结果和数据。表示层和控制层结合起来开发,采用struts框架,控制层的配置是在struts-config.xml配置文件中定义的,控制层和表示层之间的接口也需要在该文件中定义。Ø 业务层(Manager) :业务层主要负责业务模块的逻辑应用设计,采用Spring框架。首先需要规划业务层向控制层提供的接口,然后设计器接口的实现类,业务层接口的具体实现需要调用到已定义的DAO层的接口。接着在Spring的配置文件中配置接口与实现的关联,以及设置相关的DAO接口。在控制层中只需要调用业务层接口就可以很方便的进行业务处理。封装业务层的业务逻辑有利于业务逻辑的独立性和可重用性。Ø 持久层(DAO) :接受业务层的调用,完成数据的持久化工作。采用Hibernate技术实现,业务层和持久层都采用Spring框架,首先需要定义业务层与持久层之间的接口,然后在设计接口的实现,最后在Spring的配置文件中定义此接口关联的实现类。在业务层中调用此接口来进行数据业务的处理,而不关心此接口的具体实现类是哪个类,所有接口实现调用的内部细节全部封装在Spring框架中。DAO层的数据源,以及有关数据库连接的参数都需要在Spring的配置文件中配置。二、 数据库表结构设计1. 系统数据模型权限管理系统的实体有人员、角色、模块、功能,这四个实体之间的关系是:一个人员可以具有多个角色,多个人员也可以属于同一个角色;一个模块可以有多个功能,一个功能也可以属于多个模块;一个角色对多个模块的多个功能也可以有多个权限,多个角色也可以拥有同一个权限。这四个实体之间关系如下:图 3权限管理系统数据模型图2. 系统表设计人员信息表 staff序号字段描述类型长度主键可空1StaffID编号Int是否2StaffName名称Varchar(50)否否3StaffPwd密码Varchar(50)否否角色表 role序号字段描述类型长度主键可空1RoleID角色IDInt是否2RoleName角色名称Varchar(50)否否3Description描述Varchar(200)否否人员角色关系表StaffRole序号字段描述类型长度主键可空1ID唯一标识Int是否2RoleID角色IDInt否否3StaffID人员IDInt否否模块表 Module序号字段描述类型长度主键可空1ModuleID模块IDInt是否2ModuleName模块名称Varchar(50)否否3ModuleURL模块路径Varchar(200)否否功能项表Function序号字段描述类型长度主键可空1FunctionID功能IDInt是否2FunctionName功能名称Varchar(50)否否3Description描述Varchar(200)否否权限表 Auth(模块功能表)序号字段描述类型长度主键可空1AuthID权限IDInt是否2ModuleID模块IDInt否否3FunctionID功能IDInt否否角色权限表RoleAuth序号字段描述类型长度主键可空1ID唯一标识Int是否2AuthID权限IDInt否否3RoleID角色IDInt否否3. 创建popedom(权限系统)数据库脚本create table staff(StaffID int auto_increment primary key,StaffName varchar(50) unique,StaffPwd varchar(50) not null)ENGINE=InnoDB DEFAULT CHARSET=gbk;create table role(RoleID int auto_increment primary key,RoleName varchar(50) unique,Description varchar(200) not null)ENGINE=InnoDB DEFAULT CHARSET=gbk;create table staffrole(ID int auto_increment primary key,RoleID int not null,StaffID int not null,CONSTRAINT staffrole_role_fk FOREIGN KEY (RoleID) REFERENCES role (RoleID),CONSTRAINT staffrole_staff_fk FOREIGN KEY (StaffID) REFERENCES staff (StaffID) )ENGINE=InnoDB DEFAULT CHARSET=gbk;create table module(ModuleID int auto_increment primary key,ModuleName varchar(50) unique,ModlueURL varchar(200) not null)ENGINE=InnoDB DEFAULT CHARSET=gbk;create table function(FunctionID int auto_increment primary key,FunctionName varchar(50) unique,Description varchar(200) not null)ENGINE=InnoDB DEFAULT CHARSET=gbk;create table auth(AuthID int auto_increment primary key,ModuleID int not null,FunctionID int not null,CONSTRAINT auth_module_fk FOREIGN KEY (ModuleID) REFERENCES module (ModuleID),CONSTRAINT auth_function_fk FOREIGN KEY (FunctionID) REFERENCES function (FunctionID) )ENGINE=InnoDB DEFAULT CHARSET=gbk;create table roleauth(ID int auto_increment primary key,AuthID int not null,RoleID int not null,CONSTRAINT roleauth_auth_fk FOREIGN KEY (AuthID) REFERENCES auth (AuthID),CONSTRAINT roleauth_role_fk FOREIGN KEY (RoleID) REFERENCES role (RoleID) )ENGINE=InnoDB DEFAULT CHARSET=gbk; 4. 初始化数据insert into role values(1,'系统管理员','管理系统全部资源');insert into staff values(1,'admin','21232F297A57A5AA0E4A801FC3'); - admin:admin insert into module values (1,'用户管理','staffAction.do'),(2,'角色管理','roleAction.do'),(3,'模块管理','moduleAction.do'),(4,'功能管理','functionAction.do'),(5,'用户角色管理','staffRoleAction.do'),(6,'模块功能管理','authAction.do'),(7,'角色权限管理','roleAuthAction.do');insert into function values (1,'save','保存'),(2,'create','创建'),(3,'list','列表'),(4,'delete','删除'),(5,'update','更新'),(6,'search','搜索'),(7,'staffrole','用户角色列表'),(8,'createstaffrole','创建用户角色'),(9,'removestaffrole','删除用户角色'),(10,'rolestaff','角色用户列表'),(11,'roleauth','角色权限列表'),(12,'createroleauth','创建角色权限'),(13,'removeroleauth','删除角色权限'),(14,'createauth','创建模块功能权限'),(15,'removeauth','删除模块功能权限'),(16,'createrolestaff','创建角色用户'),(17,'removerolestaff','删除角色用户');insert into auth values (1,1,1),(2,1,3),(3,1,4),(4,1,5),(5,1,6),(6,2,1),(7,2,3),(8,2,4),(9,2,5),(10,2,6),(11,3,1),(12,3,3),(13,3,4),(14,3,5),(15,3,6),(16,4,1),(17,4,3),(18,4,4),(19,4,5),(20,4,6),(21,5,6),(22,5,7),(23,5,8),(24,5,9),(25,5,10),(26,5,16),(27,5,17),(28,6,3),(29,6,14),(30,6,15),(31,7,11),(32,7,12),(33,7,13);insert into roleauth values(1,1,1),(2,2,1),(3,3,1),(4,4,1),(5,5,1),(6,6,1),(7,7,1),(8,8,1),(9,9,1),(10,10,1),(11,11,1),(12,12,1),(13,13,1),(14,14,1),(15,15,1),(16,16,1),(17,17,1),(18,18,1),(19,19,1),(20,20,1),(21,21,1),(22,22,1),(23,23,1),(24,24,1),(25,25,1),(26,26,1),(27,27,1),(28,28,1),(29,29,1),(30,30,1),(31,31,1),(32,32,1),(33,33,1);insert into staffrole values(1,1,1);专心-专注-专业

    注意事项

    本文(权限管理系统(共9页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开