1、精选资料房屋租赁管理系统后台框架设计与实现摘要:随着计算机技术的发展,现代企业的管理和企业的业务处理已经离不开计算机的支持,也正因此,计算机技术渗透进入企业管理,企业项目的复杂逻辑也同时促进了计算机技术的发展和跟新,然而,在技术和企业逐渐成熟的过程中,企业就积累了自己的经验和满足公司业务的技术沉淀,尽管每个企业的业务都不同,但是就像我们在网上看到的各式各样的企业系统,我们依然能发现其共同的功能模块,于是,既然技术解放劳动力,有没有一个后台框架平台它已经实现了这些基础的模块设施甚至对未来子系统模块的扩展也提供了管理?企业只需要根据自己的业务去扩展就行,本课题就搭建“企业项目框架”的雏形做一定探索
2、。关键字:J2EE;企业项目;后台;扩展;维护Abstract:With the development of computer technology, business process management and enterprise of modern enterprise has been inseparable from the support of the computer, also, therefore, computer technology penetration into the enterprise management, complex business logic
3、project also contributed to the development of computer technology and with new, however, mature technology and business process, enterprises have accumulated their own experience and technology to meet the companys business precipitation, although each companys business are different, but as we saw
4、 in the various kinds of online kind of business systems, we can still find their common functional modules,since the technology frees labor, is there a background frame platform it has achieved these basic modules for future expansion of facilities and even sub-module also provides management? Ente
5、rprises only need to expand their business on the line, this project will build a corporate framework of the project, the prototype do some explorationKey words:J2EE;Enterprise Project;Background;Expand;Maintain1 引言1.1 课题研究的背景介绍随着计算机技术的发展,现代企业的管理和企业的业务处理已经离不开计算机的支持,技术解放劳动力,很难想像一个纯人力维护和办公的公司能在当今信息社会里
6、走多远,也正因此,计算机技术渗透进入企业管理,企业项目的复杂逻辑促进者计算机技术的发展和跟新,才有了今天这个蓬勃发展的世界,然而,在技术和企业逐渐成熟的工程中,企业就积累了自己的经验和满足公司业务的技术沉淀,尽管每个企业的业务都不同,但是就像我们在网上看到的各式各样的企业系统,我们依然能发现其共同的功能模块(例如,人员管理,用户组管理,权限管理,系统模块管理等),我们甚至能察觉其内部的软件实现也是一样,只不过呈现给用户的方式发生了改变而已,于是,既然技术解放劳动力,有没有一个后台框架平台它已经实现了这些基础的模块设施甚至对未来子系统模块的扩展也提供了管理?企业只需要根据自己的业务去扩展就行,显
7、然,大部分成熟已经这样做了,本课题就搭建“企业项目框架”的雏形做一定探索1.2 后台开发技术及技术介绍1.2.1 后台开发技术技术:Spring mvc +Spring+Hibernate +Mysql2 房屋租赁管理系统后台设计需求分析2.1 房屋租赁管理后台设计可行性分析2.1.1 房屋租赁管理系统后台设计技术可行性本系统采用Spring mvc +Spring+Hibernate +Mysql进行后台框架设计、与前台界面参数的传递和数据绑定等功能。Spring管理整个基础框架,Hibernate实现数据持久层的操作,Spring mvc实现月前台界面请求交互,整个实现方案都在预期之中;2
8、.1.2 房屋租赁管理系统后台设计操作可行性该系统后台设计清晰,方案简洁,有完善的异常处理机制和提示信息机制,用户会感到所见即所得,因此操作方面可行。2.2 房屋租赁管理系统后台功能分析本系统应具有如下模块功能:登录模块:由于在用户和相应的管理者在管理房源时,需要房源的详细信息或其他操作,所以需要客户和管理者先登录才可以对房源进行操作。在进入系统时进行确认时,系统会判断是不是本系统数据库内存在的用户,若不是本站客户,必须建立新帐号。用户管理:管理平台使用用户,包括增删改查;用户组管理:用户在系统中权限以角色(用户组)的形式进行管理,用户和用户组是多对对的关系。功能上包括增删改查用户组和设置权限
9、模块管理:管理整个系统以及子系统的功能模块,删除修改已存在模块,也可注册新模块,供开发者开发;菜单管理:管理系统的菜单,系统的菜单多样化,在菜单管理处可得到维护,包括菜单,菜单组,显示位置,显示图标的修改;系统分类:管理系统的分类,已经业务数据中的一些美剧类型的维护系统选项:系统的一些设置开关(目前属于预留功能);2.3 房屋租赁管理系统界面系统整体结构本系统后台整体结构如图2-1所示:图2-1 系统后台框架整体结构图2.4 房屋租赁管理系统后台开发环境1.本系统界面的硬件环境如下:l 客户机:普通PCn CPU:P4 1.8GHzn 内存:256MB以上n 分辨率:推荐使用1024*768像
10、素l WEB服务器n CPU:P4 1.8GHzn 内存:256MB以上l 数据库服务器n CPU:P4 1.8GHzn 内存:256MB以上2.本系统界面的硬件环境如下:l 操作系统:WindowsXP/WIN7/WIN8l 数据库:Mysql6.0l 浏览器:IE9.0,火狐浏览器2.5 房屋租赁管理系统后台业务流程图1、本系统界面管理员流程图如图2-3所示:图2-3 系统后台管理员业务流程图2.6 房屋租赁管理系统后台响应时间需求无论是客户端和管理端,当用户登录,进行任何操作的时候,系统应该及时的进行反应,反应的时间在5秒以内。系统应能监测出各种非正常情况,如与设备的通信中断,无法连接数
11、据库服务器等,避免出现长时间等待甚至无响应。3 房屋租赁管理系统后台框架详细设计4 登录模块设计说明4.1程序描述这部分程序就是为了完成用户的登陆的。用户登陆后,系统会判断用户的身份 所属用户组。从而加载对应的菜单和模块操作权限,登陆失败则重新进行登陆操作或者退出登录系统1。该部分程序为不常驻内存,并且是顺序执行的4.2 功能IPO表系统:房屋租售管理系统 作者:高达川模块:登录模块 2日期:2014.12.5调用:无被调用:无输出:1, 后台执行结果码2, 成功失败提示输入:1, 用户登录名2, 用户密码处理:用户登录系统4.3 性能该部分主要是用于用户登陆系统,所以对精读要求不高,但是对于
12、时间特性要求较高,因为登录时间短,用户才能对进入本系统有耐心而不至于因为每次登陆时间过长而放弃使用本系统。因此在此段程序里,从数据库里查询房主信息和学生信息的时候可以根据索引查找,以节约时间。4.4 输入项用户的登录名和密码,用于检验用户的身份是否正确,并在正确的情况下进入相应的菜单已进行相应的操作。4.5 输出项输出后台操作和验证的结果,以提示框的形式展现在右下角,其详细信息具有以下含义:登陆成功:成功登录进系统,用户输2入的登录名和密码正确,返回主界面布局登录失败:表明用户输入的信息有误,不能进入系统,跳转到登录界面4.6 算法当用户按下登录按钮时,系统执行public ResultObj
13、ect login(HttpServletRequest request, HttpServletResponse response)函数.函数内部执行getLoginUser(loginname,password)验证身份。当getLoginUser(loginname,password)返回true,表明用户存在,能登录进入系统。4.7 流程逻辑5 系统用户管理设计说明5.1 程序描述系统用户管理:管理平台使用用户,包括增删改查,用于为平台创建新用户,和管理已存在的用户。5.2 功能IPO表系统:房屋租售管理系统 3作者:高达川模块:系统用户管理日期:2014.12.8调用:用户组管理模块
14、被调用:模块管理用户组管理输入:(1) 新增:输入(用户登录名,密码,确认密码,真实姓名,隶属用户组,安全登录时间,备注信息)(2) 修改:输入(需修改的信息)(3) 删除:输入(用户Id)(4) 查询:输入(登录名或者用户组)输出:(1)增删改1.后台执行结果码2.成功失败提示(2)查询 1,符合查询条件的用户集合处理:系统用户管理5.3性能对精读没有要求,但是对时间上要求还是要相应时间,一般为1-2秒,并能及时根据返回的信息,确认用户当前的操作是否执行成功5.4输入项5.4.1 新增用户:填写下列表单信息5.4.2 修改用户:修改下列表单信息5.4.3 删除用户:选中需要删除的用户数据所在
15、行(传入后台的是用户的Id)3.3.4.4 查询用户:输入查询条件(用户名或者用户组)、5.5算法.1,新增用户:录入信息,点击确定,程序调用Public ResultObject sav4e(HttpServletRequest request, HttpServletResponse response,ModelMap map)方法,内部调用private SysUser saveOrUpdateUser(SysUser user)方法;2.修改用户,录入信息,点击确定,程序调用public ResultObject update(HttpServletRequest request, H
16、ttpServletResponse response)方法,内部调用private SysUser saveOrUpdateUser(SysUser user)方法;2.删除用户,选中用户,确认删除,程序调用public ResultObject delete(HttpServletRequest request, HttpServletResponse response)内部调用sysUserUserGroupServiceImp.deleteSysUserUserGroup(entity);删除用户组中的用户sysUserServiceImpl.deleteById(Id)删除用户5.6
17、流程逻辑5.7存储分配1、用户表(Sys_user):详细见数据字典数据库设计2、用户组表(Sys_user_group):详细见数据字典数据库设计3、用户、用户组中间表(Sys_user_group):详细见数据字典数据库设计6 用户组管理设计说明6.1 程序描述系统用户组管理:管理平台使用用户所在的用户组,包括用户组的增加、删除、修改,以及用户组的权限设置,用于为平台创建新用户组,和管理已存在的用户组。6.2 功能IPO表系统:房屋租售管理系统 作者:高达川模块:系统用户组管理 日期:2014.12.8调用:用户组管理模块被调用:模块管理输入:(1)新增:输入(用户组名称,用户组描述)(2
18、)修改:输入(需修改的信息)(3)删除:输入(用户组Id)(4)设置权限:输入(用户组Id)(5)停用、启用:输入(用户组Id)输出:(1)增删改1.后台执行结果码2.成功失败提示(2)禁用、启用 1.已启用用户组对应状态为“正常”2.停用用户组对应状态为“禁用”(3)设置权限 弹出用户组权限设置对话框,对其中的权限进行勾选、修改处理:系统用户组管理6.3 性能对精度没有要求,但是对时间上要求还是要相应时间,一般为1-2秒,并能及时根据返回的信息,确认用户当前的操作是否执行成功。6.4 输入项6.4.1 新增用户组:填写下列表单信息6.4.2 修改用户组:修改下列表单信息6.4.3 删除用户组
19、:选中需要删除的用户组数据所在行(传入后台的是用户组的Id)6.4.4 设置用户组权限:点击对应的用户组最后一栏的“设置权限”(传入后台的是用户组的Id),对其中的权限进行勾选、取消等。6.4.5 更改用户组状态:点击对应的用户组最后一栏的停用、启用(传入后台的是用户组的Id)6.5输出项6.5.1 更改用户组权限:点击对应的用户组最后一栏的“设置权限”(传入后台的是用户组的Id),弹出权限设置对话框6.5.1 更改用户组权限:系统用户组管理的业务操作、权限设置,返回值为统一的对话框提示(右下角):6.6 算法1,新增用户组:录入信息,点击确定,程序调用PublicResultObjectsa
20、ve(HttpServletRequestrequest,HttpServletResponseresponse)方法,内部调用sysUserGroupServiceImp.save(sysUserGroup)方法;2.修改用户组:录入信息,点击确定,程序调用PublicResultObjectedit(HttpServletRequestrequest,HttpServletResponse response)方法,内部调用sysUserGroupServiceImp.update(sysUserGroup)方法;3.删除用户组:选中用户组,确认删除,程序调用public ResultObj
21、ect delete(PathVariable(ids) String ids)内部调用sysUserGroupServiceImp.deleteById(Integer.parseInt(id)4.更改用户组状态:点击启用或停用,确认更改用户组状态,程序调用public ResultObject changeStatus(HttpServletRequest request,HttpServletResponse response),内部调用sysUserGroupServiceImp.changestatus(sysUserGroup);5.设置用户组权限:点击设置权限按钮,程序调用pub
22、lic List LoadModuleByGroupid (HttpServletRequest request, HttpServletResponse response),来加载有模块的模块树,通过勾选相应的模块,程序调用SysModuleActionController的public ResultObject saveAllAuthorization(HttpServletRequest request, HttpServletResponse response)和public ResultObject saveCheckedAuthorization(HttpServletReques
23、t request, HttpServletResponse response),来保存相应的权限。6.7 流程逻辑选择操作设置权限启用|禁用删除用户组修改用户组新增用户组权限设置对话框返回相应结果操作成功刷新页面失败,重新选择的操作6.8 存储分配1、用户组表(sys_user_group):详细见数据字典数据库设计2、用户组模块权限表(sys_user_group_module_right):详细见数据字典数据库设计3、用户组模块操作权限表(sys_user_group_action_right):详细见数据字典数据库设计4、用户、用户组中间表(sys_user_group):详细见数据字
24、典数据库设计5、系统模块及模块操作信息表(sys_module_action):详细见数据字典数据库设计7 菜单管理设计说明7.1程序描述菜单管理主要是解决系统的定义和维护,一个系统拥有格式各样的菜单,不同的只菜单的显示形式,然而纵使千姿百态菜单总有一些不便的属性:菜单的名称,显示顺序,图标,链接url地址,所属菜单组,因此菜单管理就实现了对菜单这些定性属性的维护,用户可以根据自己的需要改变自己菜单的排列顺序和显示图标。7.2 功能IPO表系统:房屋租售管理系统 作者:高达川调用:模块管理,用户组管理被调用:无模块:菜单管理模块 日期:2014.12.5输入:(1) 新建菜单:(输入:菜单名称
25、,系统编号,备注信息)(2) 修改菜单:(输入:菜单名称,系统编号,备注信息)中需要修改的信息(3) 删除菜单(输入菜单Id)(4) 设置菜单项(输入菜单号)输出:3, 后台执行结果码4, 成功失败提示处理:系统菜单的管理7.3 性能菜单管理需要很搞得访问权限,通常只有超级管理员才会在西东定义的时候去建立一些菜单吗,因此菜单管理模块的数据访问量不会很大,但是由于菜单在设计的时候采用的是无线分级的设计思路,所以特别是在拖拽菜单的时候,应为需要跟新界面和跟新数据库中的很多节点,所以在性能上是非常好内存的,但是对于小批量的菜单一般在0.51秒钟的时间能完成全部的操作。7.4 输入项7.4 .1,新建
26、/修改系统菜单:输入下列表单的信息7.4 .2删除菜单:选中需要删除的菜单,确认删除7.4 .3.设置菜单项(选中菜单项,点击设置菜单项)7.5 输出项输出项为统一的提示窗口;7.6 算法7.7.1,新增菜单 后台程序调用过程:调用菜单管理控制器(MenuOptionContoller) 的 public ResultObject createMenu(SysMenumenu) 方法;内部调用菜单管理业务逻辑层(ISysMenuService)的public ResultObject createMenu(SysMenu sysMenu)创建菜单核心代码:7.7.2,修改菜单 后台程序调用过程
27、:调用菜单管理控制器(MenuOptionContoller) 的 public ResultObject updateMenu (SysMenumenu) 方法;内部调用菜单管理业务逻辑层(ISysMenuService)的public ResultObject updateMenu (SysMenu sysMenu)创建菜单核心代码:7.7.3,删除菜单 后台程序调用过程:调用菜单管理控制器(MenuOptionContoller) 的 public ResultObject deleteMenu (SysMenumenu) 方法;内部调用菜单管理业务逻辑层(ISysMenuService
28、)的public ResultObject deleteMenu (SysMenu sysMenu)创建菜单核心代码:7.7.4.设置菜单项:第一步:打开设置菜单的UI页面,调用菜单管理控制器(MenuOptionContoller)下列方法 第二步:加载顶级菜单树:调用菜单管理控制器(MenuOptionContoller)下列方法 内部实现核心代码,获取菜单所属菜单组的所有子菜单项排序:先找到左孩子,然后依次找右兄弟进行排序,得到从左往右的有序菜单树第三:移动菜单项(复杂),调用菜单管理控制器(MenuOptionContoller)下列方法,菜单的移动主要有三个重要参数,源节点Id,目标
29、位置Id,插入的方式:(前段插入,尾部插入,作为子节点插入)内部核心代码7.7 流程逻辑7.8 存储分配详细见数据字典数据库设计;8 系统模块维护8.1 程序描述对系统中的功能模块进行维护。管理员可以1查看到当前系统已成熟上线的模块,并能了解的模块后台的程序调用入口和方法,同时可以注册新模块,共开发者按规范开发,从而扩展业务功能。8.2 功能IPO表系统:房屋租售管理系统 作者:高达川调用:无被调用:系统菜单展示,权限维护需要使用系统模块中的相关数据模块:登录模块 日期:2014.12.5输出:1. 操作成功或者错误信息。2. 查询输出数据详细信息。输入:1新增系统模块:模块名称,路径,所属系
30、统分类,说明。2修改系统模块:模块的名称,模块的路径和模块说明处理:系统模块进行维护。8.3 性能该程序主要是在系统上线前,确定用户使用的模块功能,或者在系统上线后进行二次开始时增加系统模块。该项功能使用较少,对性能要求不高。8.4 输入项新增分类体系:分类体系名称:分类体系所属分类,说明。新增分类项:分类项名称,说明。8.5 输出项输出后台操作和验证的结果,以提示框的形式展现在页面正中,其详细信息具有以下含义:类型新增成功:分类项增加成功,点击后刷新数据。分类体系新增成功:分类体系增加成功,点击后刷新分类体系。8.6 算法根据填写的数据调用,数据保存的save方法进行数据保存。修改删除:8.
31、7 流程逻辑8.8 存储分配详细见数据字典数据库设计;9 系统分类说明9.1 程序描述主要完成用户对于系统分类体系和系统分类数据的维护功能。9.2 功能用户对系统分类进行修改,增加系统分类体系和增加系统分类数据IPO表系统:房屋租售管理系统 作者:高达川调用:无被调用:涉及数据字典的字段程序都会调用到模块的查询分类数据的功能。模块:登录模块 日期:2014.12.5输出:3. 操作成功或者错误信息。4. 查询输出数据详细信息。输入:1. 新增分类体系:名称额,所属系统分类,分说明2. 新增分类:分类项名称,说明。3. 移动:需要移动位置的节点的ID 和当前节点的ID4. ,新增下级分类和新增上
32、级分类:需要增加节点上级或者下级的ID处理:系统分类体系和系统分类项管理。9.3 性能该程序主要是在系统上线前,对用户确定的数据字典进行配置,或者在系统上线后增加用户所需要的新的分类体系和分类项,对于性能的要求不高且很少用到。9.4 输入项新增分类体系:分类体系名称:分类体系所属分类,说明。新增分类项:分类项名称,说明。9.5 输出项输出后台操作和验证的结果,以提示框的形式展现在页面正中,其详细信息具有以下含义:类型新增成功:分类项增加成功,点击后刷新数据。分类体系新增成功:分类体系增加成功,点击后刷新分类体系。9.6 算法分类项移动:当用户进入系统分类页面是,系统根据查询到的json树数据在
33、客户端构造,数据的节点关系,并在页面储存为常量,当页面进行加载时,将数据解析到需要调用的页面js函数中。执行js时像后台传输需要进行移动的节点ID,系统执行public ResultRightObject move(HttpServletRequest request, HttpServletResponse response)函数进行节点位置移动.数据保存和修改:数据进行保存和修改时分别调用save和update方法进行数据的更新和数据的增加。9.7 流程逻辑9.8 存储分配COM_OBJECT_SORT_TYPE 系统分类体系表COM_OBJECT_SORT_CATEGORY 系统分类体系
34、分类项结束语综上所述,主要介绍了企业后台框架的需求分析到详细设计的过程及思路。通过使用Spring+Hibernate+SpringMVC,最后加上合理的数据库设计,可以搭建出一个现代企业项目后台框架的雏形,并在此基础上设计和实现子系统业务逻辑的,达到事半功倍的效果。通过本次毕业设计,我将所学的知识进行了综合的应用,使我更进一步掌握如何将通过仔细的调研、分析、设计和编程来完成一个系统后台,更懂得如何开发系统。更重要的是对java面向对象的设计思路有了更深的理解。由于时间仓促,本程序后台还有诸多不如,欠缺实际情况的考虑,致使本系统还有或多或少存在不够完善的地方,需要再去完善所以希望各位老师给予指
35、证。10 致谢在这次毕业设计的整个过程中,虽然遇到了一些技术上的难题但在与老师、同学和网友的交流下都及时的解决了问题。尤其感谢导师张彦峰老师认真负责的工作态度,深厚的理论水平都使我受益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高,导师不厌其烦的给予我指导和帮助,为我提供了许多不可多得的宝贵意见, 使我的毕业设计能够很好的完成。在此,谨向导师表示崇高的敬意和衷心的感谢!11 参考文献1Java编程思想(中文版)(第4版) 作者:(美) 埃克尔 出版社:机械工业出版社ISBN:9787111212508 出版时间:2007-04-01.2 数据库系统概念 作者: Abr
36、aham Silberschatz, Henry F.Korth, S.Sudarshan 译者: 杨冬青 马秀莉 唐世渭 等 丛书名: 计算机科学丛书 出版社:机械工业出版社 出版日期:2006 年10月3蔡剑,景楠.Java Web应用开发:J2EE和Tomca7tM.北京:清华大学出版社,2004.4 耿祥义编著JSP基础编程M清华大学出版社,200455-1625徐建波,周新莲Web设计原理于编程技术M中南大学出版社,2005185-1936 孙鑫编著Java Web开发详解M电子工业出版社,2006189-2747 林上杰,林康司编著JSP2.0技术手册M电子5工业出版社,20043-68 萨师煊,王珊.数据库系统概论(第三版)M.北京:高等6教育出版社,1998.THANKS !致力为企业和个人提供合同协议,策划案计划书,学习课件等等打造全网一站式需求欢迎您的下载,资料仅供参考,如有侵权联系删除!可修改编辑
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100