基于ssh的oa系统的设计论文内容摘要:
构后的 ACL模型,解决系统用户权限继承角色权限,以及权限排斥的问题。 权限管理实现授权登陆用户能够添加模块信息、删除模块信息 ,添加角色、删除角色、给角色授权,给用户分配帐号、删除帐号、修改帐号信息,给用户分配角色、给特权用户授权、查看用户信息,普通登陆用户能够查看模块信息、角色信息 、修改用户密码。 本系统采用了分层开发,但是对三层架构做了修改,将持久层合并在业务逻辑层中,系统分为呈现层、业务逻辑层。 呈现层使用 jsp 和 jstl[15]表示。 系统 层次 如图 42 所示 : 领域模型业务逻辑层呈现层 图 42 数据库结构的设计 系统开发中先根据系统需求建立领域模型,根据领域模型构造出实例对象,最后采用 O/R映射工具 Hibernate,从对象模型导出 关 系模型。 领域模型如 图 43所示: M od u l e 模块 1*+ pa r en t+ ch i l dr enO r ga n i z at i on 机构 1*+ pa r en t+ ch i l dr enR o l e 角色 A C L 访问控制列表 *1*1U se r sR ol es 用户角色 *1A p pr ov eI n f o 审批信息 D ocu m en t 公文 *1W or kf l ow 流程 *1A d dr essL i st 通信录 N o t e 便签 In f or m at i o n 公共信息 E m pl oy ee 员工 *1+ or gU se r 用户 * 111*1*1 ap pr ov er*1 cr ea t or1*1* 图 43 系统模型图 数据库表的生成 根据领域模型创建实体类,创建出实体类之间的关联关系。 通过工具 xdoclet 生成实体类的映射文件和 hibernate 配置文件。 利用 hibernate 的工具类倒出数据库表,系统的表结构如下所示: 表 41 t_anization(机构表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 机构 id serialNumber varchar(255) YES NULL 机构编号 Name varchar(255) YES NULL 机构名称 description varchar(255) YES NULL 描述 parentId int(11) YES MUL NULL 父机构 ID 表 42 t_employee (员工表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 员工 id empName varchar(255) YES NULL 员工姓名 gender varchar(255) YES NULL 性别 age int(11) YES NULL 年龄 telephone varchar(255) YES NULL 电话 address varchar(255) YES NULL 地址 varchar(255) YES NULL duty varchar(255) YES NULL 职务 Id int(11) YES MUL NULL 机构 ID remark varchar(255) YES NULL 备注 表 43 t_note (便签表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 便签 id title varchar(255) YES NULL 便签标题 content varchar(255) YES NULL 便签内容 createTime datetime YES NULL 便签日期 createorId int(11) YES MUL NULL 创建者 ID 表 44 t_addressList (通信录表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 通讯录 id name varchar(255) YES NULL 名字 mobilePhone varchar(255) YES NULL 手机电话 homePhone varchar(255) YES NULL 家庭电话 officePhone varchar(255) YES NULL 办公室电话 varchar(255) YES NULL MSN varchar(255) YES NULL MSN Code varchar(255) YES NULL 邮编 address varchar(255) YES NULL 地址 remark varchar(255) YES NULL 备注 creatorId int(11) YES MUL NULL 创建者 ID 表 45 t_user (用户表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 用户 id username varchar(255) YES NULL 用户名 password varchar(255) YES NULL 密码 createTime datetime YES NULL 创建时间 expireTime datetime YES NULL 失效时间 emp int(11) YES UNI NULL 员工 ID 表 46 t_role (角色表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 角色 id roleName varchar(255) YES NULL 角色名 表 47 t_users_roles (用户角色第三方表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment id userId int(11) YES MUL NULL 用户 ID roleId int(11) YES MUL NULL 角色 ID orderNo int(11) YES NULL 角色级别,该字段用于解决权限冲突问题 表 48 t_acl ( acl列表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment id principalType varchar(255) YES NULL 主体类型( Role、User) principalId int(11) YES NULL 主体 id moduleId int(11) YES NULL 模块 id aclState int(11) YES NULL 访问控制状态 aclTriState int(11) YES NULL 是否继承,该字段用于解决权限继承问题 表 49 t_module (模块表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 模块 id moduleName varchar(255) YES NULL 模块名称 url varchar(255) YES NULL 模块的 url orderNo int(11) YES NULL 排序号码 serialNumber varchar(255) YES NULL 模块编号 parentId int(11) YES MUL NULL 父模块 ID 表 410 t_workflow (流程表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 流程 id workflowName varchar(255) YES NULL 流程名称 processDef longblob YES NULL 流程定义 processImage longblob YES NULL 流程图片 表 411 t_document (公文表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 公文 id title varchar(255) YES NULL 公文标题 content longblob YES NULL 公文内容 annex longblob YES NULL 公文附件 description varchar(255) YES NULL 公文描述 createTime datetime YES NULL 创建时间 processInstanceId bigint(20) YES NULL 流程实例 ID status varchar(255) YES NULL 公文状态 createorId int(11) YES MUL NULL 创建者 ID 表 412 t_approveinfo (审批信息表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 审批信息 id approveTime datetime YES NULL 审批时间 ment varchar(255) YES NULL 审批内容 documentId int(11) YES MUL NULL 公文 ID approverId int(11) YES MUL NULL 审批者 ID 表 413 t_information (信息表) Field Type Null Key Default Extra 描述 id int(11) NO PRI NULL auto_increment 信息 id title varchar(255) YES NULL 信息标题 cotent varchar(255) YES NULL 信息内容 annex longblob YES NULL 信息附件 createTime datetime YES NULL 信息发布时间 数据库的操作 Hibernate是现在非常流行的持久化框架,使用 Hibernate进行持久化数据是一个非常好的选择。 在 Hibernate中 Session负责完成对象的持久化操作, Session在 Hibernate中相当于 JDBC Connection中的 Connection。 创建 Session的步骤: 1) 根据传入的 Hibernate 配置文件 或者 创建 Configuration类的实例 : Configuration config = new Configuration().configure(); 2) 根据 Configuration 类实例创建 Session 的工厂 SessionFactory 的实例SessionFactory sessionFactory = (); 3) 创建 Session的实例 : Session session = (); 上述数据库操作要频繁地创建 SessionFatory 实例,管理 session 的打开和关闭,但是创建 SessionFactory 非常耗费系统资源,这种操作不应该是首选方法。 在 Spring 中封装了一个实现 Hibernate相关接口的的基类 HibernateDaoSupport,在这个类中提供了数据访问模板 HibernateTemplate进行持久化操作。 外部类只要继承基类 HibernateDaoSupport,并利用Spring 的依赖注入特性向其注入 SessionFactory 就能使用 Spring 的 HibernateTemplate。 使用 Spring 的 HibernateTemplate 进行持久化操作,就能避免了 SessionFactory 的频繁创建以及避免了对 Sess。基于ssh的oa系统的设计论文
相关推荐
第 4章 主要介绍了系统软件设计 7 第二章 系统方案设计 MP3 原理概述及框图 本系统采用的控制核心是 STC 公司生产的 STC12C5A60S2 单片机,通过所编程序读取 SD 卡中存储的数据到单片机,然后单片机再将数据传送到VS1003 解码芯片进行解码,通过数模转换器将解码出来的数字信号转换成模拟信号,将模拟信号进行音频放大,再经过低通滤波到耳机输出口,我们就可以听到音乐了。 图
温作用 ,根本不能实现对温度、湿度、光照等环境因子的调控。 6 机械化水平低 ,调控能力差 ,作业主要依靠人力。 生产管理主要靠经验和单因子定性调控。 本课题任务 针对我国蔬菜大棚存在的问题 ,通过调查分析 ,确定了设计任务。 本系统要能对温湿度、光照度进行实时采集 ,采集到的数据传入单片机中 ,通过单片机对采集到的数据进行处理 ,处理过的数据通过单片机接口送达显示模块显示
完美运行。 掌握这一软件的使用对于使用 51 系列单片机的爱好者来说是十分必要的, 由于小编喜欢 使用 C 语言 编程, 而 KEIL 对 C 语言的编译方便快捷。 C51 工具包的整体结构较为丰富,其中 UVISION 与 ISHELL 分别是 C51 for Windows和 for Dos的集成开发环境 (IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。 开发人员可用 IDE
图 ER 图 系统用例图 留言板用例图 第 8 页 共 34 页 图 系统用例图 系统总体设计 系统有三种身份登录:管理员、用户、访问者。 管理员只有一个,是程序中自己设定的,为了保证系统安全,用户不可以自己升级为管理员可以进入自己的后台修改信息,访问者可以访问留言板的任何内容,但要想发布内容,就要进行注册以认清用 户身份。 留言板系统采用 MVC 模式( model、 view、
反复使用。 穿孔带容纳的程序长度可不受限制,但如果发生错误时就要全部更换。 穿孔卡的信息容量有限,但便于更换、保存、可重复使用。 磁芯和磁鼓仅适用子存贮容量较大的场合。 范于选择那一种控制 元件,则根据动作的复杂程度和精确程度来确定。 分类 按用途分类 ( 1) 专用机械手 专用机械手是专为一定设备服务的,简单、实用,目前在生产中运用比较广泛。 它一般只能完成一、二种特定的作业
设计 10 return SUCCEED。 } } pthread_mutex_unlock(amp。 user_table_mutex)。 return FAIL。 } /************************************************************ *函数名称 : init_server_socket *功能说明 : 初始化服务器用于监听的的