小型房屋租赁管理系统设计与实现毕业设计论文.docx
《小型房屋租赁管理系统设计与实现毕业设计论文.docx》由会员分享,可在线阅读,更多相关《小型房屋租赁管理系统设计与实现毕业设计论文.docx(35页珍藏版)》请在冰豆网上搜索。
小型房屋租赁管理系统设计与实现毕业设计论文
学号14102403118
毕业设计
题目:
小型房屋租赁管理系统的设计与实现
作者届别2014届
院别计算机学院专业计算机科学与技术
指导教师职称
完成时间2014年5月8日
摘要
如何利用现代的管理手段,提高房屋租赁管理水平,是当今租赁市场所面临的一个重要课题。
论文基于MyEclipse10.0和Oracle平台设计实现了一套房屋租赁管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,整个系统主要包含了修改密码管理、房屋信息管理、房屋预订管理、出租户信息管理、求租户信息管理、房屋交易管理、租金统计管理、用户信息管理等功能。
论文主要介绍了本系统的开发背景,所要完成的功能和开发的全过程。
重点的说明了系统设计的重点、设计思想、难点技术和解决方案。
关键词:
房屋预订;B/S;房屋租赁
ABSTRACT
Howtousemodernmeansofmanagement,improvethehousingrentalmanagementlevel,isanimportanttaskinthecurrentrentalmarket.TheMyEclipse10.0andOracleplatformdesignandimplementationofahousingleasemanagementsystembasedon,itsdevelopmentmainlyincludestwoaspects:
thebackgroundoftheestablishmentandmaintenanceofdatabaseandfront-endapplicationdevelopment,thewholesystemmainlyincludesthemodificationpasswordmanagement,housinginformationmanagement,bookingmanagement,housingrentalhouseholdsintheinformationmanagement,informationmanagementfortenants,transactionmanagement,rentalstatisticsmanagement,userinformationmanagementetc..
Thepapermainlyintroducedthedevelopmentbackgroundofthesystem,completethefunctionsanddevelopmentprocessofthe.Keyexplanationsystemdesignkeypoint,designthought,difficulttechnologyandsolution.
Keywords:
Housingreservations;B/S;Rentalhousing
1绪论
1.1课题研究现状
随着计算机技术的飞速发展,房屋租赁业务也受到了信息化时代带来的管理便利和高效的影响。
从目前的应用情况上来看,国外的许多大型房屋租赁中介公司都建立了自己的信息管理平台,例如法国大部分的房屋中介公司利用Internet平台,通过运用MLS(多重上市服务)对出租房屋和客户信息之间的对接,实现了对出租房屋和客户的双重信息的有效管理。
如使用“房屋租赁管理系统”软件,取代传统的手工登记模式,帮助客户实现房屋出租,房屋租赁中介自动化管理,其很大程度上提高了工作效率,并且极大的减少了出错率。
国内的房屋中介行业起步较晚,国外的很多房屋中介又纷纷进入国内市场,例如美国“21世纪不动产”早已在中国全面启动,以其先进的房源信息共享平台取得了丰厚的业绩。
然而国内的许多房屋租赁中介公司依然使用传统的手工记录方式,信息的载体和传播只要通过纸质媒介来完成,而需要在大量的数据中查询出所要的消息也仍然使用手工搜索的方式,这种方式会占用很多人力资源和管理成本,为了在房屋租赁市场上占有一席之地,保持自己的竞争力,房屋租赁中介公司建立自己的信息化管理平台至关重要。
1.2开发背景与目的
利用计算机实现物业管理中的房屋租赁管理势在必行。
对于物业管理企业来说,通过利用计算机高效率的来完成房屋租赁的日常事务管理,是顺应现代的企业制度条件、促进企业的工作管理走向科技化、标准化的必需条件。
由于房屋租赁中介的日常管理是一项繁杂而又格外周密的工作,出租房屋的基本信息,客户基本资料的管理,房屋交易信息管理,租金统计的管理,通常都不能够出错,如果通过手工操作,需手工填写大量表格数据,这样会消耗企业大量的人力和物力,而通过利用计算机对房屋租赁的管理,不但可以确保每项信息的正确无误和迅速输出,同时,计算机具有手工管理所无法比拟的优点,比如:
迅速检索、查找简便、出错率低、存储容量大、安全性好、低成本等,这些优点可以很好的提升物业管理的工作效率,也是企业的科技化、标准化管理,和世界接轨的重要条件。
本系统的开发就是为了解决物业管理企业在房屋租赁管理当中的一些不严谨,让房屋租赁的管理走向简单和有效。
2系统可行性分析
2.1操作可行性分析
操作可行性主要是指用户使用的舒适性,因此界面设计时要充分考虑管理人员的习惯,使得操作简单便宜:
数据录入迅速、规范、可靠;统计准确,制表灵活,适应力强,容易扩充。
具有易用性、灵活性、开放性与可视性等,这些基本都可以实现。
如今的计算机早已进入千家万户,硬件成本的下降,导致购买计算机成本降低。
本系统是利用自己的计算机作为软件开发平台,使开发出的系统具有友好的用户界面、良好的安全设置,这让用户能够快速掌握系统的使用。
所以在操作上是可行的.
2.2技术可行性分析
技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。
本系统采用的是Java和Html开发语言以及Oracle数据库。
前台界面运用了LigerUI,LigerUI是基于JQuery开发的一系列控件组,包括表单、布局、表格等等常用UI控件,使用LigerUI可以快速创建风格统一的界面效果。
LigerUI视图简洁明了,操作较为简便,采用Json格式传递数据。
具有不错的Grid表格处理能力。
而后台运用了JFinal系统架构,JFinal是基于Java语言的极速Web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。
在拥有Java语言所有优势的同时再拥有Ruby、Python等动态语言的开发效率。
所以技术上是可行的。
由以上操作和技术两方面的分析可以看出、本系统的开发时机成熟、从多种角度考虑,都是可行的,采用本系统,能够使整个系统内部所有的信息工作简化、提高工作效益。
由于采用统一的数据信息,使相关人员能够快速的查询所需要的数据、资料及其它信息的,使信息快速高效运行。
3系统需求分析
3.1系统设计目标
利用企业已有的软硬件环境及科学的管理方式开发方案,建立房屋租赁管理系统,实现房屋租赁的计算机自动化管理。
本系统应与物业管理企业原有的房屋租赁管理制度相一致,并达到操作过程中的直观、方便、实用、安全等要求。
3.2系统应用现状调查
当前,许多物业管理企业的房屋租赁信息管理都是记录在纸张上,人力资源所占用的比例比较大,通常是各个主要负责人用书面形式在管理房屋租赁信息的,效率非常低下。
而且容易造成数据打印、汇总、房屋信息更新不及时,数据容易丢失、损坏,不易保存且保密性很差,给公司和客户带来损失。
3.3系统需求描述:
本系统业务描述如下:
(1)用户登陆管理功能:
①本系统共分有两类用户(系统管理员、普通用户),各类用户分别享有不同的权限,但是都必须要登录,并由系统判定其权限后才可以使用本系统;
②管理员可添加用户,确定用户功能权限,并可修改、删除和查看用户信息;
用户可以修改自己的密码和查看个人资料;
(2)房屋信息管理功能:
①普通用户和管理员可以添加房屋信息,并设置状态(包括“已出租”、“未出租”、“已预订”、“洽谈中”);
②普通用户和管理员可以修改和删除未出租的房屋;
③普通用户和管理员可查询和统计所有的房屋状态清单;
④求租客户可预定租房,缴纳订金过后,由普通用户或者管理员在预定租房中添加客户预订租房,(系统将自动将房屋信息标记为“已预订”);
⑤普通用户和管理员可以修改和删除预定租房的房屋和客户信息;
⑥普通用户和管理员可以查询所有预订的房屋和客户清单。
(3)客户信息管理功能:
①普通用户和管理员可以添加出租客户以及求租客户信息;
②普通用户和管理员可以修改和删除出租客户和求租客户信息;
③普通用户和管理员可查询和统计所有的客户信息清单;
(4)交易信息管理功能:
①普通用户和管理员可以添加房屋出租交易信息,并设置状态(包括“交易成功”、“洽谈中”、“已预订”、“交易失败”);
②求租客户预定租房,缴纳订金过后,可与房东商谈租房事宜,此时由普通用户或者管理员修改交易信息中的状态为“洽谈中”,(系统将自动将房屋信息标记为“洽谈中”);
③房东与住户签订租房合同后,普通用户和管理员将修改交易信息为“交易成功”(系统将自动将房屋信息标记为“已出租”);
④假如房东与住户商谈不成功,则普通用户和管理员将修改交易信息为“交易失败”(系统将自动将房屋信息标记为“未出租”);
⑤普通用户和管理员可以查看到住户应缴纳租金后向客户发出消息提醒,催促其按时缴纳租金;
⑥普通用户和管理员可查询、添加、修改和删除所有的交易信息以及租金统计信息;
(5)系统设置管理功能:
此模块用于管理员和系统开发人员使用,方便管理员和系统开发人员添加,删除以及修改需要的菜单等。
3.4系统接口需求分析
对于交互式系统来说,人机界面设计和数据设计、体系结构设计及过程设计一样重要。
人机界面设计的质量直接影响用户对软件产品的评价,所以我们对人机界面的设计要给予足够重视。
所以本系统采用了Windows 的通用图形界面,界面具有一致性,简洁明了美观,便于用户操作。
3.5系统开发环境及开发工具
3.5.1系统开发环境
(1)软件:
Windows7操作系统
JDK1.6
MyEclipse10.0开发工具
Oracle数据库
(2)硬件:
一台性能一般的个人计算机
3.5.2系统的开发工具
(1)JDK1.6
JDK(JavaDevelopmentKit)是Java开发工具包的缩写。
它是一种用于构建在Java平台上发布的应用程序、applet和组件的开发环境,是一切java应用程序的基础,所有的Java应用程序都是构建在这个之上的。
而本系统采用的开发语言之一就是Java,所以在开发之前必须安装好JDK,而本机选择安装的版本是比较主流的JDK1.6。
(2)MyEclipse10.0
本系统采用MyEclipse10.0作为后台开发工具。
该版本使用最高级的桌面和Web开发技术,包括HTML5和JavaEE6,支持JPA2.0、JSF2.0、Eclipselink2.1以及OpenJPA2.0.对检索功能以及错误查询功能更加强大,包括对JS文件的错误查询。
MyEclipse10.0能够完整的支持本系统所使用的两种开发语言Java和Html,所以MyEclipse10.0是非常合适作为本系统开发工具的。
(3)Oracle数据库
Oracle数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完善的管理数据的功能;作为一种关系型数据库,它是一个完整的相关产品;作为一个分布式的数据库,它实现了分布式处理功能。
并且只要在一种机型上学习了Oracle知识,就能运用于在各种类型的机器上。
相对于其他数据库来说,Oracle数据库的优势很多,所以本系统选择Oracle数据库为底层支持平台。
3.6其他需求分析
本系统应具有良好的可维护性、可靠性、可理解性以及高效率。
便于用户的理解和操作。
可维护性包含了可读性、可测试性等含义。
可靠性一般包含正确性和健壮性。
开发过程中,应在各个矛盾的目标之间作衡量,并在有限的条件下(经费、时间、可用的软、硬件资源等),以便使上述各个方面都得到最大限度的满足。
4系统总体设计
4.1系统架构设计
系统主体架构采用MVC设计模式即MVC框架,MVC全名是ModelViewController,是模型(Model)-视图(View)-控制器(Controller)的缩写,一种软件设计典范,用一种业务逻辑和数据显式分离的方法组织代码,将业务逻辑聚集到一个部件里面,在界面和用户围绕数据的交互能被改进和个性化定制的同时而不需要重新编写业务逻辑。
使系统业务逻辑与用户应用界面分开。
它的工作原理如图4.1所示:
图4.1MVC模式的工作原理图
本系统采用MVC结构设计,用户通过界面向业务逻辑层发送请求,业务逻辑层遵守一定的逻辑规则将请求处理之后进行数据库操作,然后将数据库返回的数据封装成以类的形式返回给用户界面层。
这种方式在一定程度上增加了数据库的安全性。
上面的View(视图)显示数据(数据库记录),Controller(控制器)处理输入(写入数据库记录),Model(模型)表示应用程序核心(比如数据库记录列表)。
4.2系统功能模块划分和结构设计
系统的总体设计的主要内容之一的就是系统模块结构设计,其任务是合理的进行模块的分解和定义,把每个子系统划分成一个个模块,并通过模块结构图把分解的模块按层次结构联系起来。
模块结构图是结构设计中描述系统结构的图形工具。
作为一种文档,它必须严格的定义模块的名字、功能和接口,同时还应当在模块结构图上反映出结构化设计的思想。
系统逻辑模型中数据流图模块是逻辑处理模块,该模型并不表明模块的物理组成和实现,同样的,也看不出模块的层次关系,因此在系统结构设计中要将数据流图中的每个逻辑模块进行进一步的分解,用模块结构图来确定系统的层次结构关系,并且将系统的逻辑模型转换为物理模型。
小型房屋租赁管理系统包括普通用户模块以及系统管理员两个基本模块。
其中系统管理员模块又可以详细划分为个人信息管理模块、房屋信息管理模块、客户信息管理模块、交易信息管理模块和系统设置管理模块。
而普通用户模块又可以详细划分为个人信息管理模块、房屋信息管理模块、客户信息管理模块、交易信息管理模块,本系统采用Html+Java+Oracle设计模式,Html页面用于给用户提供界面,提交参数及显示结果。
通过Java处理参数并连接数据库,从数据库中获得用户请求的信息再交付给Java处理交付个用户显示在Html页面。
4.2.1系统的数据流程分析
整个系统从总体上由个人信息管理、房屋信息管理、客户信息管理、交易信息管理以及系统设置五大部分组成,每一部分主要功能如下:
1.个人信息管理:
①实现查看用户的个人信息
②实现用户密码的修改
2.房屋信息管理:
①出租房屋基本信息的管理
②实现房屋预定功能
3.客户信息管理:
①出租户基本资料管理
②求租户基本资料管理
4.交易信息管理
①交易信息,分基础信息、房屋信息、房东信息、房客信息等
②租金统计,分客户信息、房屋信息等
5.系统设置功能:
①用户基本信息,增删改查用户,分配修改用户角色等
②模块菜单管理,增加修改菜单等
4.2.2系统功能模块图
图4.2系统功能模块图
4.3系统主控流程
从上面的系统功能结构图和系统主要各功能模块定义,我们对本系统有了一个大概的了解。
下面从系统流程方向给出使用该系统的主控流程,系统管理员或是客户首先进入登录模块,输入正确的用户名和密码进入各自的管理模块,然后可在相应的模块中进行需要的操作。
完成相应的操作后可以安全退出该管理模块,下次登录还是按照这样的步骤进行。
其流程图如图4.3所示:
图4.3系统流程图
5数据库设计
数据库设计(DatabaseDesign)是指对于一个给定的应用环境,构造最优的数据库模式,确立数据库及其应用系统,让其能够有效的快速的存储数据,使各种用户的应用需求(信息要求和处理要求)得到满足。
数据库设计对一个系统来说十分重要,由于数据库结构的好坏会直接对系统的效率及实现效果产生影响,所以有效的合理的数据库结构设计将会提高数据存储的效率,可以保证数据的完整和一致性。
下面将依次从数据库需求分析,数据库概念结构设计,数据库逻辑结构设计阐述本系统在数据库方面的设计。
在数据库管理系统的支持下,数据完全独立于应用程序,并且能被多个用户或程序共享,其关系如图5.1所示。
图5.1应用程序与数据库的关系
5.1数据库需求分析
通过上述系统功能的分析,得出小型房屋租赁管理系统系统具有如下需求信息:
(1)系统用户包括系统管理员和普通用户。
(2)不同的用户角色拥有不同的权限,需要对权限进行验证。
(3)系统管理员可以添加用户,添加成功后可以登录系统进行相关权限的操作。
(4)系统管理员可以对系统、个人信息、房屋信息、客户信息、交易信息、系统设置进行管理。
另外,也可以对系统进行整体管理。
综上所述,我们设计如下所示的数据项和数据结构。
用户信息表:
包括的字段名有用户ID、编码、用户姓名、年龄、性别、密码、角色ID、联系电话、住址、身份证号码、邮箱、备注、创建人、创建时间、最后修改人、最后修改时间。
角色信息表:
包括的字段名有角色ID、角色名称、备注、创建人、创建时间、最后修改人、最后修改时间。
模块信息表:
包括的字段名有模块ID、模块名称、备注、创建人、创建时间、最后修改人、最后修改时间。
菜单信息表:
包括的字段名有菜单ID、菜单编码、菜单名称、菜单所在路径、菜单所属模块ID、备注、创建人、创建时间、最后修改人、最后修改时间。
角色-菜单表:
包括的字段名有主键ID、角色ID、菜单ID、备注。
出租房屋信息表:
包括的字段名有房屋ID、房屋居室、房屋面积、预期租赁价格、补充描述、租赁时间、房屋地址、客户ID、房屋编码、房屋出租状态、备注、创建人、创建时间、最后修改人、最后修改时间。
预定租房信息表:
包括的字段名有订单ID、订单编号、预订房ID、求租户ID、订金、订金有效期、计划租期、计划起租日期、预订日期、备注、创建人、创建时间、最后修改人、最后修改时间。
出租户信息表:
包括的字段名有出租户ID、出租户编码、出租户姓名、年龄、性别、出租户联系电话、出租户家庭住址、出租户身份证号码、邮箱、备注、创建人、创建时间、最后修改人、最后修改时间。
求租户信息表:
包括的字段名有求租户ID、求租户编码、求租户姓名、年龄、性别、求租户身份证号码、联系电话、家庭住址、邮箱、房型(居室)要求、面积要求、意向价位、意向租期、意向地段、意向房屋编码、备注(其他要求)、创建人、创建时间、最后修改人、最后修改时间。
交易信息表:
包括的字段名有交易ID、交易编码、租赁房ID、房客ID、交易时间、租金、佣金(手续费)、交易状态、押金、租期、备注、创建人、创建时间、最后修改人、最后修改时间。
租金统计表:
包括的字段名有收费ID、收费编号、租金年份、租金月份、已交租金、欠费金额、房屋ID、备注、创建人、创建时间、最后修改人、最后修改时间。
5.2数据库逻辑结构设计
数据库的概念结构设计结束后,下一步我们要做的是将上面数据库的概念结构转化为Oracle数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
在这里我们将着重介绍该系统中的以下这些表。
(1)用户信息表
该表表示的是系统用户的一些基本信息。
其中,USERID是用户ID,它是该表的主键,不能为空。
一个USERID号唯一确定一个用户,用来方便数据库查询等操作。
USERNAME表示USERID号对应的用户姓名,USERCODE表示USERID号对应的用户编码,PASSWORD是用来登录系统的密码,其它字段名是USERID对应用户的另一些基本属性。
如表5.1所示:
表5.1WS_USER表
字段名称
字段说明
数据类型和长度
是否为空
主键否
USERID
用户ID
NUMBER
notnull
是
USERCODE
用户编码
VARCHAR2(22)
null
否
USERNAME
用户姓名
VARCHAR2(50)
null
否
PASSWORD
密码
VARCHAR2(22)
null
否
ROLEID
用户角色
NUMBER
(1)
null
否
AGE
年龄
NUMBER(3)
null
否
SEX_ID
性别
NUMBER
(1)
null
否
PHONENUMBER
手机号码
VARCHAR2(11)
null
否
ADDRESS
家庭住址
VARCHAR2(200)
null
否
IDCARD
身份证号码
VARCHAR2(18)
null
否
EMAIL
邮箱
VARCHAR2(50)
null
否
REMARK
备注
VARCHAR2(200)
null
否
CREATED_BY
创建人
VARCHAR2(30)
null
否
CREATION_DATE
创建事件
DATE
null
否
LAST_UPDATED_BY
最后修改人
VARCHAR2(30)
null
否
LAST_UPDATE_DATE
最后修改时间
DATE
null
否
(2)角色信息表
该表表示的是角色的基本信息。
同样地,ROLEID是角色ID,它是该表的主键,不能为空。
一个ROLEID只能唯一确定一个角色。
另外,该表中包括了角色的其他一些基本信息,如角色名称。
如表5.2所示:
表5.2WS_ROLE表
字段名称
字段说明
数据类型和长度
是否为空
主键否
ROLEID
角色ID
NUMBER
notnull
是
ROLENAME
角色名称
VARCHAR2(10)
null
否
REMARK
备注
VARCHAR2(200)
null
否
CREATED_BY
创建人
VARCHAR2(30)
null
否
CREATION_DATE
创建时间
DATE
null
否
LAST_UPDATED_BY
最后修改人
VARCHAR2(30)
null
否
LAST_UPDATE_DATE
最后修改时间
DATE
null
否
(3)模块信息表
该表表示的系统模块的基本信息。
同样地,MODULEID是表示系统模块ID,它是该表的主键,不能为空。
用来方便对系统模块的增删改查等操作。
另外该表包含了系统模块名称等信息。
如表5.3所示:
表5.3WS_MODULE表
字段名称
字段说明
数据类型和长度
是否为空
主键否
MODULEID
模块ID
NUMBER
notnull
是
MODULENAME
模块名称
VARCHAR2(100)