欢迎来到天天文库
浏览记录
ID:9390532
大小:1.42 MB
页数:31页
时间:2018-04-29
《毕业论文(设计)房屋租赁管理系统的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
房屋租赁管理系统的设计与实现摘要在当今社会城市化的快速发展下,越来越多的外来务工人员向城市涌来,传统的房屋租赁中介已经无法完全消化这日益庞大的大蛋糕,房屋租赁管理系统的诞生很好的解决了这个问题。需求分析的结果显示,房屋租赁管理系统的主要功能可以划分为前台的用户登陆、多样查询、房源发布等操作,后台业务员对房源的审核、上传和对用户信息的增删改查这些业务,而管理员负责对业务员信息的增删改查。本文的主要内容包括了此房屋租赁管理系统的设计与开发,首先讲述了该系统的研究目的、背景以及研究的过程,进而对系统模块的流程、功能结构以及数据库设计进行介绍,最后交代了实现和测试过程。该系统实现了权限分配的功能,不同的角色将被赋予不同的权限,以便进行对应权限的相关操作。在该系统的实现过程中,采用了B/S模式以及Struts、Spring、Hibernate等Java框架技术,同时使用MySQL作为数据库。【关键词】房屋租赁;Java;系统管理;权限控制 ThedesignanddevelopmentofthehouserentingsystemAbstractUndertherapiddevelopmentofurbanizationintoday'ssociety,moreandmoremigrantworkersarecomingtothecity,andtraditionalhousingrentalagencyhasbeenunabletofullydigestthisgrowingbigcake,thebirthofthehousingrentalsystemisagoodsolutiontothisproblem。Theresultsofdemandanalysisshowthat,Themainfunctionofthehouseleasingsystemcanbedividedinto,theloginofuseratthefontdesk,multiplequery,thereleaseofhouseresourceandsoon.Atthebackdesk,personnelcandotheoperationslikeexamininghouseresources,releasinghouseresources,CRUDtouserinfomations。AndtheadminshoulddotheoperationsofCURDtotheusers。Themaincontentsofthispaperincludethedesignanddevelopmentofsystemmanagementmoduleinthishouserentingsystem。First,itdescribesthepurpose,background,researchprocessofthissystem。Thenintroducetheprocessofthesystemmanagementmodule,functionstructures,thedesignofthedatabase。Finally,accouttherealizationandtestofthesystem。Thissystemhasrealizedthefunctionofpowerdistribution,anddifferentroleswillbegivendifferentpermissions.,inordertocarryouttheoperationscorrespondingtotheauthority.Intherealizationofthesystem,B/SmodelandsomejavaframelikeStruts,Spring,Hibernatehavabeenused。MySQLdatabaseisthebaseofthewholesystem.[Keywords]Houselease,Java,Systemmanagement,PermissionAssignment 盐城师范学院毕业设计目录1课题概述11.1研究的背景及意义11.2课题思路11.3课题的主要内容12可行性分析22.1技术可行性22.2经济可行性22.3操作可行性33项目技术简介34需求分析44.1项目分析44.1.1角色分析44.1.2系统管理员用例图44.1.3系统其他用户用例图54.2功能分析64.2.1注册模块64.2.2登录模块64.2.3人员管理74.2.4房源管理74.2.5系统总体功能描述75数据库设计85.1概念结构设计85.2逻辑结构设计86系统功能设计116.1用户模块116.1.1逻辑设计116.1.2类设计126.2业务员模块136.2.1逻辑设计13 盐城师范学院毕业设计6.2.2类设计146.3管理员模块156.3.1逻辑设计156.3.2类设计157系统实现167.1用户模块167.2业务员模块217.3管理员模块238系统功能测试238.1人员管理测试用例248.2业务员模块测试用例248.3管理员模块测试用例249结论25参考文献26致谢271 盐城师范学院毕业设计1课题概述信息化的浪潮已成燎原之势席卷全球,房屋中介的运营方式必然在这样的潮流中得到革新,为了满足外来人员对租赁房源的需求,同时提高房屋中介的工作效率,降低运营成本,房屋租赁的信息化,网络化越来越受到人们的青睐。Java语言是该系统的基础,Java语言作为一门完全面向对象的语言,具有良好的跨平台性[1],使得该系统具有更好的适应性。使用SSH框架对整个系统进行架构,使用MySQL来实现系统的存储,引入MVC思想,将业务模块进行了分层处理,从而降低了各模块间的耦合成都,提升重复使用的几率。1.1研究的背景及意义信息化、网络化是大势所趋,互联网已经引领了时代的潮流,互联网技术和手段已经成为人们工作和生活必不可少的重要组成部分[2]。对于任何企业来说,信息化的办公流程是其进行蜕变和转型的重要渠道,否则必然落后于同行,工作效率大打折扣的同时,运营成本也会比其他同行高昂,让其在竞争力上处于明显下风[3],所以,信息化的程度体现了一个企业的竞争力。房屋租赁管理系统的开发的目标旨在打破房产中介传统的办公方式,提升工作人员的业务能力,取代纸质的宣传手段,将信息通过网络手段大范围辐射出去,使得租客与房东之间的交互更便捷,选择更多样,以此达到三赢的局面。1.2课题思路在前期的需求分析中,已经与许多房东、房客和中介工作人员进行详细调查,在能力允许的范围内,具体项目的开发流程始终以行业规范为标杆。前期准备过程中,对系统进行概要设计和详细设计是迈出的第一步,对数据库进行合理的设计使得整个开发过程水到渠成,设计完成后需要对系统各模块拆分,使得开发过程更加细致,条理分明,接着需要通过UML建模手段划分出实体类,进而创建数据库表以及它们之间对应的逻辑关系,而接下来的编码工作可以通过里程碑的形式划分为不同阶段,并逐步实现。剩下的则是对各模块进行单元测试和集成测试,修复bug之后要进行回归测试,最后提交测试用例报告。1.3课题的主要内容第26页,共27页 盐城师范学院毕业设计该系统作为一个房屋租赁管理系统,以广大的流动人口为目标群体,以大量的房源信息为基础,吸引用户与该网站进行信息交互。该系统应该实现对房源、用户、预约操作等的管理。1)界面美观、布局合理、功能实用、操作简便2)能够详细地向用户展示信息,并且实现分页功能3)向用户提供便捷的查询功能,选择多样,并且实现模糊查找4)用户浏览信息后可以选择预约看房,并选择看房时间5)用户可以上传自己的房源信息,上传时会有相应的操作提示6)实现用户登录验证,用户只有在登陆状态下才可进行部分操作,如上述的预约看房和上传房源7)业务员可以对未审核房源信息的审核,对已审核房源的修改等操作8)业务员可以上传自营房源的功能8)业务员可以对用户信息的修改等操作9)管理员可以对业务员进行增删改查等操作1可行性分析1.1技术可行性该项目使用Eclipse作为开发工具。Eclipse是一个开源的、基于Java的可扩展平台,它提供一些列插件,可供软件开发人员高效地开发程序。所以说从开发工具角度来说,是可行的。从语言设计角度来说,Java作为一种面向对象的语言网站类的系统通常可以采用J2EE的架构进行设计和开发。J2EE架构包含了许多组件,可简化且规范应用系统的开发与部署进而提高可移植性、安全性和可再用性。同时,Java具有很好的跨平台性,软件可以不受计算机硬件和操作系统的约束而在任意计算机环境下运行,大大提高了该系统的可移植性。在数据库方面,熟悉MySQL的操作,熟练掌握sql语句,加上Hibernate对数据库的操作,可以很方便地对数据进行增删改查的操作,也不存在什么问题。1.2经济可行性第26页,共27页 盐城师范学院毕业设计该系统的开发所使用的开发环境、框架技术和数据库都是开源的,在这点上并不存在任何成本支出。而作为一个房屋信息网站,该系统将以大量的信息资源为基础,通过信息免费共享的方式,吸引广大用户。信息的快速的、大范围的流通可以促进房屋租赁行业的迅猛发展,将巨大的市场转变为巨额的利益。一旦用户习惯了这种互联网式的商业模式和高效便捷的操作方式带来的良好的用户体验,那么他们将形成思维定式,并对其产生依赖性,从而摒弃传统的租赁模式,这为该网站的长远发展和长久利益提供了保障。相较于有限的开发和运维成本就显得不值一提了。1.1操作可行性在城市化快速发展、流动人口急剧增长的趋势下,房屋租赁市场必将兴起。然而,传统的房屋租赁运营模式存在着范围小、信息闭塞、流通性差、效率低和成本高等弊端。主要通过纸质广告、房屋中介的方式进行房源信息的流通交互,而采用网络租赁的方式不但增加了信息量而且扩大了信息流通的范围,同时还确保了信息的实时性和有效性。用户只需浏览网页便可获取房源信息,进行简单的搜索就可以缩小查询范围,操作简单易懂,完全遵循以人为本的理念,提高了可操作性和用户体验。2项目技术简介该项目的技术实现主要为:SSH框架、Tomcat服务器以及MySql数据库。SSH框架是目前业内比较受追捧的一种 开发架构。使用该架构的系统可以分为表示层、业务逻辑层、数据持久层和域模型层,这样开发出来的Web应用不但结构清晰、复用性强,而且便于后期维护。Struts是一个在JSPModel2基础上实现的MVC框架,主要分为模型(Model)、视图(Viewer)和控制器(Controller)3部分[4],作为整个系统的基础架构,实现MVC的分离工作,只需通过构建一个配置文件,即可构建整个系统各部分之间的联系,使整个系统的脉络更加清晰,在Struts框架的模型部分,控制业务跳转,主要实现了前台与后台之间的数据交互。这对于后期的维护无疑有着莫大的好处。同时Struts标签库的灵活使用,能大大提高开发的效率。不但如此还支持Spring框架[5]。无论是从大小还是开销Spring都算是一个轻量级的框架。Spring的IOC使得所有业务逻辑类和DAO类可以交由Spring框架进行管理。某个对象依赖于另一个对象,那么这个被依赖对象会被传递进这个依赖对象中,不再需要自行创建,不必采用硬编码的方式,从而降低了耦合。有了Spring这种特性,软件开发人员不用再考虑属性文件解析等这些底层的东西,可以把精力集中在上层应用的实现上,在一定程度上提高了开发效率。同时Spring提供的一系列事物保证了我们对于数据库的每一步操作都具有一致性,Hibernate是一个开源的关系对象映射框架,第26页,共27页 盐城师范学院毕业设计它的作用就是在关系型数据库和对象之间做了一个映射。从对象(Object)映射到关系(Relation),再从关系映射到对象。这样,我们在操作数据库的时候,不需要再去和复杂SQL打交道,只要像操作对象一样操作它就可以实现自动化对象关系映射[6]。只需要维护XML配置即可,大大节省了开发人员的工作量。此三种框架的相互结合,业务流程开发所具备的全部功能得以完美实现。该系统使用ApacheTomcat作为服务器进行部署。Tomcat是一个非常好用的服务器,不但占用系统资源少,而且操作简便,还具有良好的扩展性,比较受业内人士的欢迎,也是我们平时使用比较多的服务器。作为一个开源的web应用服务器。ApacheTomcat在并发访问量不大的系统中被普遍使用,因此算是Java应用的首选服务器[7]。作为开源软件的代表,MySQL数据库已成为互联网平台上医用广泛的数据库软件[8]。1需求分析该房屋租赁管理系统实现了普通信息系统的所有功能,如房源信息的展示、房源信息的上传、生成预约订单以及后台管理等。该系统基于B/S模式进行开发,他的主要使用者包括用户、业务员和管理员。对于用户而言,系统的主要作用是浏览房源信息,生成预约订单。同时用户也可以将自己的房源信息上传到网站。对于业务员而言,需要审核房源,上传房源,并且对用户和房源信息进行操作。对于管理员来说,其主要工作是对业务员信息进行操作。该系统权限等级分明,不同的角色被分配了不同的权限,对应了不同的操作。1.1项目分析1.1.1角色分析该房屋租赁管理系统角色主要有管理员、业务员、用户等。管理员是唯一享有最高操作权限的系统角色。管理员可以对系统进行所有操作,包括权限的分配、人员的添加、资源的维护等都在其操作范围内。其他角色只能在其权限范围内活动,不可进行其他操作。1.1.2系统管理员用例图管理员拥有该系统操作的最高权限,可以对各个模块进行全局管理。具体功能如图4-1所示:第26页,共27页 盐城师范学院毕业设计图4-1管理员用例图1.1.1系统其他用户用例图其他用户通过系统授权后,可以获得不同的权限,以便对系统其它功能模块进行访问。系统其他用户的用例图,如图4-2所示:图4-2其他角色用例图第26页,共27页 盐城师范学院毕业设计1.1功能分析该系统迎合了房屋租赁中介办公信息化的需要,实现了在线租房这一核心目标,把角色设定作为整个业务流程开发的基础,通过分配不同的角色身份,可以访问不同的资源,整个系统中,不同角色的人员各司其职、互不干涉。系统功能架构分析图,如图4-3所示:房屋租赁管理系统的设计与开发客户端管理端用户注册用户登录修改密码发布房源管理员业务员业务员管理管理员登录房源管理用户管理审核房源业务员登录图4-3系统架构图1.1.1注册模块任何用户都可以在该网站注册,注册后便可以获得更多的操作权限。用户选择注册时需要提交相应的用户信息,而在填写信息时,系统会对所填写的信息进行校验,如所填写的用户名是否已经存在,信息格式是否正确等。信息提交完成后,系统会自动向所登记的邮箱发送一封邮件,只需点击右键中的激活码便可将用户激活,直到这里用户注册完成,可以进行登录。1.1.2登录模块只有在该网站注册过的用户可以登录。用户需要在登录页面填写相应的登录信息。信息提交后会根据用户名在数据库中查找该用户的信息,如果找到,会将提交的密码于数据库中的密码进行匹配,密码一致,则登陆成功,在页面头部显示用户名。第26页,共27页 盐城师范学院毕业设计1.1.1人员管理1)用户管理用户统一由其所在地的业务员进行管理,业务员可以对用户的信息进行删、该、查功能,同时也可以对该用户上传的房源信息进行修改。2)业务员管理在整个系统的运营模式中,业务员信息由管理员创建。虽然业务员在系统中并非拥有最高权限,但系统的大部分业务由其完成、在整个系统中占有重要的地位,只有管理员拥有对业务员信息进行增、删、改、查的权限。1.1.2房源管理1)个人房源访问该网站的用户一般为以浏览房源信息为主要目的租客,然而还有一部分用户通过登录该站点发布房源信息,将自己手头的房源出租出去,这部分房源被划分为个人房源,需要通过后台业务员的审核。2)自营房源而另一部分房源由该网站运营和管理,经由该网站业务员将房源信息上传、用户若想要租下该房,可以进行预约看房操作。1.1.3系统总体功能描述该租赁网站充分利用在线资源,完全符合房屋租赁行业办公信息化发展的必然趋势。把广大的城市流动人口作为客户群体,开拓市场。系统采用了MVC的思想,使得系统体现出多个层次,从表现层到控制层到业务逻辑层再到持久化操作层,这四层之间各自负责相应的功能,降低了代码间的依赖程度。该系统的开发遵循行业规范。整个系统呈现高内聚、低耦合的特点,并且通过事物来控制操作,从而达到操作的一致性。Struts作为控制层,担负起了整个系统的数据传输工作,业务逻辑的实现需要经由Spring将其注入到业务层中。同时,Spring可以通过编程或者注解的方式对事务进行管理[9]。对数据库的增删改查等值九华操作都在DAO层中实现,所有SQL都被统一存放在XML配置文件中,以便于进行管理。前端采用JSP动态页面,而JavaScript技术的使用实现了某些页面效果,使用户的感受得到提升。第26页,共27页 盐城师范学院毕业设计1数据库设计数据存储通过MySQL数据库实现。MySQL的关系型数据库特点体现在,数据并不存放在一张表中,而是被存放在几张不同的表中,这样做的目的是提高查询速度。1.1概念结构设计经过前期的准备工作可以知道,该系统的数据表应有管理员表、业务员表、用户表、房源表、订单表。数据库表之间的关系如图5-1所示:图5-1数据库E-R图1.2逻辑结构设计根据系统的前期设计以及需求,并通过概念设计的分析,该系统的系统管理功能模块存在5张表。如下所示:(1)用户表t_admin:用于保存管理员的基本信息,其设计结构如表5-1所示。表5-1管理员表字段名字段类型字段含义主键外键idint主键ID√×usernamevarchar用户名××passwordvarchar密码××permissionvarchar权限××第26页,共27页 盐城师范学院毕业设计(2)业务员表t_employee:用于保存业务员的基本信息,其设计结构如表5-2所示。表5-2业务员表字段名字段类型字段含义主键外键idint主键ID√×usernamevarchar用户名××passwordvarchar密码××emailvarchar邮箱××cityvarchar城市××permissionint权限××admin_idint外键ID×√(3)用户表t_user:用于保存用户的基本信息,其设计结构如表5-3所示。表5-3用户表字段名字段类型字段含义主键外键idint主键ID√×usernamevarchar用户名××passwordvarchar密码××user_idvarchar用户编码××realnamevarchar真实姓名××telephonevarchar联系电话××emailvarchar邮箱××cityvarchar城市××stateint用户状态××codevarchar激活码××permissionint用户权限××(4)订单表t_order:用于保存预约信息,其设计结构如表5-4所示。表5-4预约表字段名字段类型字段含义主键外键user_idint外键ID×√House_idint外键ID×√timevarchar预约时间××第26页,共27页 盐城师范学院毕业设计(3)房源表t_house:用于保存房源的基本信息,其设计结构如表5-5所示。表5-5房源表字段名字段类型字段含义主键外键idint主键ID√×rent_wayvarchar出租方式××plot_namevarchar小区名称××cityvarchar城市××prefecturevarchar县级市/区××townvarchar乡镇××specvarchar详细地址××typevarchar整租房类型××room_typevarchar合租卧室类型××room_numvarchar合租户数××sex_limitvarchar性别限制××areavarchar房屋面积××fitmentvarchar装修程度××towardvarchar朝向××storeyvarchar所在楼层××storey_sumvarchar楼层总数××building_idvarchar楼栋号××cell_idvarchar单元号××room_idvarchar房间号××priceint价格××paywayvarchar支付方式××furniturevarchar设施××titlevarchar标题××textvarchar描述××imagevarchar图片路径××trifficvarchar交通方式××distancevarchar距离××user_idint外键ID√×house_idint房屋编码××sourceint房屋来源××stateint审核状态××第26页,共27页 盐城师范学院毕业设计1系统功能设计该系统分为用户、业务员和管理员三种角色,不同的角色拥有不同的功能。1.1用户模块用户注册:注册成功以后,成为该系统的用户角色。用户登录:注册成功的用户才可登录,登陆后可以进行用户角色相应的功能。房源浏览:主页面提供多种查询,用户可以选择不同的方式进行查询。上传房源:用户登录后可以上传房源信息,经业务员审核后便可发布。1.1.1逻辑设计用户进行注册,是其正真使用该系统核心功能的唯一途径。普通用户只可在该网站进行房源信息的浏览操作。其具体实现如图6-1所示:图6-1用户注册时序图用户注册成功后,只要一登录便可进行用户可以执行的所有操作。登录的具体实现如图6-2所示:图6-2用户登录时序图第26页,共27页 盐城师范学院毕业设计1.1.1类设计用户模块的所有操作,包括注册、登录以及对用户信息的修改等,其相关方法如表6-1所示:表6-1用户相关类设计类名称方法名说明User属性的getter和setter方法用户实体类UserActionloginPage()跳转至登录页面findByUserName()判断用户在数据库中是否存在login()获取用户信息登录quit()用户退出登录releasePage()跳转至注册页面release()提交信息注册activeUser()激活注册用户userList()后台获取用户列表editPage()跳转至用户编辑页面userEdit()更新用户信息userDelete()删除用户信息UserBizlogin()用户登录findByUserName()根据用户名查找用户insertUser()添加用户findByCode()根据激活码查找用户findById()根据ID查找用户quit()用户退出登录userEdit()业务员编辑用户信息deleteUser()业务员删除用户信息UserDaofindByUsername()根据用户名查找用户insertUser()添加用户findByCode()根据激活码查找用户updateUser()根据ID查找用户findById()用户退出登录deleteUser()业务员编辑用户信息findUsers()业务员删除用户信息第26页,共27页 盐城师范学院毕业设计1.1业务员模块业务员登录:业务员登陆后方可进行相应的后台操作。审核房源:业务员可以对为什么的房源信息进行审核和删除,审核后的房源会发布出去。用户管理:业务员可以对其所在城市的所有用户信息进行修改和删除。1.1.1逻辑设计业务员从后台登陆成功后,就可以进入后台操作见面,业务员登录的具体实现如图6-3所示:图6-3房源管理时序图第26页,共27页 盐城师范学院毕业设计1.1.1类设计房源模块相关的一些操作,如房源查询、房源上传以及房源的审核和修改,其相关方法如表6-2所示:表6-2业务员模块相关类设计类名称方法名说明House属性的getter和setter方法人员实体类HouseActionreleaseHouse()用户上传房源getHouses()前台获取默认房源信息findBydRentWay()根据出租方式查询findByPrice()根据价格查询findByKeyword()根据特关键字查询getHouseList()后台未审核房源getCheckPage()跳转至审核页面checkHouse()审核房源breleaseHouse()业务员发布房源HouseBizsave()存储房源getHouses()获取所有房源findByRentWay()根据出租方式查找房源findById()根据ID查找房源findByPrice()根据价格查找房源findByKeyword()根据关键字查找房源checkHouse()业务员审核房源bsave()业务员上传房源bfindHouses()后台获取未审核房源delete()删除房源HouseDaofindHouses()前台查询所有房源save()用户和业务员上传房源findByRentWay()根据出租方式查找房源findById()根据ID查找房源findByPrice()根据价格查找房源findByKey()根据关键字查找房源update()更新审核后的房源bgetHouse()获取所有未审核房源delete()删除房源第26页,共27页 盐城师范学院毕业设计1.1管理员模块管理员登录:管理员登录后进行其权限范围内的操作。业务员管理:管理员统管所有的业务员,可以对其信息进行增删改查。1.1.1逻辑设计管理员从后台登录,进入业务员管理界面,具体实现如图6-4所示:图6-4管理员模块时序图1.1.2类设计管理员对业务员的增删改查等操作的具体方法如表6-3所示:表6-3菜单管理相关类设计类名称方法名说明Employee属性的getter和setter方法菜单实体类EmployeeActiongetEmps()获取业务员列表editEmp()修改业务员信息addEmpPage()跳转至添加业务员页面addEmp()添加业务员deleteEmp()删除业务员EmployeeBizaddEmp()添加业务员login()业务员登录quit()退出登录findById()根据ID查找editEmp()修改业务员delete()删除业务员getEmps()获取所有业务员信息EmployeeDaosave()添加业务员update()更新业务员delete()删除业务员第26页,共27页 盐城师范学院毕业设计1系统实现通过不同的角色登录系统,从界面出发对该系统进行一一介绍,重点依然是放在角色设定和权限分配上,权限的分配和管理必须根据安全规则、用户需求和运营模式,用户只能访问对应自身权限的页面和进行相应的操作。该系统其他操作,例如房源管理功能模块,会进行相应介绍,具体实现细节详见该系统源代码,重复部分不再赘述。1.1用户模块进入站点直接显示主页面,主页面所在城市默认为北京,页面具有多样查询方式供用户选择,具体界面如图7-1所示:图7-1前台主界面第26页,共27页 盐城师范学院毕业设计该业务模块需要根据城市和房源来源以及房源的审核状态进行查询,并且实现分页功能。房源的来源分为所有房源,自营房源和个人房源,并且只有通过审核的房源会被查出,该业务模块部分代码如下://HouseDao类publicPageVOfindHouses(PageVOpageVO,Stringcity,intsource){try{Stringhql="fromHousegwhereg.city=:cityandg.state=:state";if(source!=0){hql=hql+"andg.source=:source";}QueryqueryObject=currentSession().createQuery(hql);queryObject.setString("city",city);queryObject.setInteger("state",1);if(source!=0){queryObject.setInteger("source",source);}//查询所有记录数量intresultCount=queryObject.list().size();pageVO.setResultCount(resultCount);//设置总页数intpageCount=resultCount/pageVO.getResultOfPage();if(resultCount%pageVO.getResultOfPage()>0){pageCount++;}pageVO.setPageCount(pageCount);//控制一下页码if(pageVO.getPage()<1){pageVO.setPage(1);}if(pageVO.getPage()>pageCount){pageVO.setPage(pageCount);}//分页queryObject.setMaxResults(pageVO.getResultOfPage());queryObject.setFirstResult((pageVO.getPage()-1)*pageVO.getResultOfPage());ListlistOfPage=queryObject.list();pageVO.setListOfPage(listOfPage);returnpageVO;}catch(RuntimeExceptionre){throwre;}}第26页,共27页 盐城师范学院毕业设计用户进入站点可查询房源,然而如果想要发布房源信息必须先注册,才可进入房源发布界面。如果输入任何信息错误,系统将予以提示,界面如图7-2所示:图7-2用户注册界面用户注册模块在提交用户注册信息后,系统会为用户创建一个独立的文件夹,用于存放用户上传的图片,并且需要向用户邮箱发送激活邮件,该模块部分代码如下:publicvoidsave(Useruser){//进行用户注册Stringcode=UUIDUtils.getUUID()+UUIDUtils.getUUID();//创建激活码user.setCode(code);//创建房东资料文件夹Stringwebpath=PathUtil.getRealRootPath(ServletActionContext.getServletContext());Stringpath=webpath+"/upload/"+user.getUser_id();Filefile=newFile(path);file.mkdirs();//发送邮件MailUtils.sendMail(user.getEmail(),code);}第26页,共27页 盐城师范学院毕业设计电子邮件的传输是通过电子邮件简单传输协议(SimpleMailTransferProtocol,简SMTP)这一系统软件来完成的。它是Internet下的一种电子邮件通信协议[10]。用户将注册信息提交后,同时系统会向用户注册的邮箱发送一封激活邮件,点击邮件中的激活码,系统会把数据库中的用户状态更改为激活状态,具体界面如图7-3所示:图7-3用户激活界面用户注册成功后可以进行登录操作,用户的用户名和密码正确便可登录成功,登陆成功后,页面右上角会显示有户名和退出登录路径,界面如图7-4所示:图7-4用户登录界面第26页,共27页 盐城师范学院毕业设计用户登录成功后便可进行房源信息的上传操作,否则拦截器将自动跳转到用户登录界面,填写信息时会有相应的格式校验,填写完房源信息后可以提交,等待业务员审核。界面如图7-5所示:图7-5上传房源界面用户上传房源信息时,除了要填写文字信息还有图片信息,图片信息会保存到用户注册时所创建的文件夹中,上传成功后,便会重定向到主页面,房源信息重新加载一次,该业务模块的部分代码如下所示://HouseAction类publicStringrelease()throwsException{StringcityString=newString(cityValue.getBytes("ISO-8859-1"),"utf-8");this.houseBiz.save(house,file,fileFileName,institutions,sourceValue,pageVO,cityString);return"index";}第26页,共27页 盐城师范学院毕业设计1.1业务员模块业务员和管理员在后台进行操作,进入后台界面之前同样需要进行登录,后台登录界面设计如图7-6所示:图7-6后台登录界面图业务员登录后,进入后台主界面,并显示待审核房源信息,业务员可以修改因为可以删除该信息,界面如图7-7所示:图7-7待审核房源界面业务员可以进行用户管理,右侧会加载用户信息列表,业务员可以进行相应操作,具体界面如图7-8所示:第26页,共27页 盐城师范学院毕业设计图7-8用户信息界面选中用户后,进入房源审核界面,并显示相应房源的信息,具体界面如下图7-9所示:图7-9用户信息界面对用户的编辑需要详细查找和更新操作,该业务模块具体实现如下所示://UserDao类publicUserfindById(Integerid){Stringhql="fromUserwhereid=?";Listlist=(List)this.getHibernateTemplate().find(hql,id);if(list.size()>0){returnlist.get(0);}returnnull;}publicvoidupdate(UserexitUser){this.getHibernateTemplate().merge(exitUser);}第26页,共27页 盐城师范学院毕业设计1.1管理员模块管理员数量少,不参与庞杂的具体业务,只负责业务员的管理。管理员登陆后便可显示业务员信息,如图7-10所示:图7-10后台管理员主界面选择业务员后,进入编辑页面后,页面显示相应业务员信息,管理员可以进行修改,界面如图7-11所示:图7-11业务员编辑界面2系统功能测试系统测试虽然不可能找出系统中所有的错误,但在很大程度上能够提高系统的安全性和健壮性。第26页,共27页 盐城师范学院毕业设计1.1人员管理测试用例用户填写用户名时会异步校验用户名是否已经存在,其他信息也会进行相应的格式校验,如果注册失败,就会停留在注册页面,如表8-1所示:表8-1用户模块测试用例表用例位置前置条件操作步骤测试数据预期结果实际结果用户模块1)tomcat正常启动2)Mysql连接正常3)系统运行正常点击增加,输入已经通过校验的数据,点击保存,提示成功用户名:晓风残月密码:111111联系方式:13815572601邮箱:aaa@ohls.com所在地:盐城系统提示注册成功并重新加载首页与预期结果一致1.2业务员模块测试用例业务员审核房源时可以对房源信息进行修改,如果修改的内容不符合要求,信息将无法保存,业务员将停留在审核页面,并且显示未修改之前的房源信息,如表8-2所示:表8-2业务员模块测试用例表用例位置前置条件操作步骤测试数据预期结果实际结果业务员模块1)tomcat正常启动2)Mysql连接正常3)系统运行正常点击审核房源,输入信息完成并点击保存出租方式:整租小区名称:幸福小区地址:盐城市亭湖区开放大道50号……方原标题:精装整租,设施齐全,交通便利,拎包入住系统提示保存成功,并刷新列表显示未审核数据与预期结果一致1.3管理员模块测试用例管理员对业务员操作时,所填写的业务员信息必须符合相应的格式,否则操作无法完成,依然停留在业务员信息编辑页面,并显示未修改之前的信息。如表8-3所示:表7-3管理员模块测试用例表第26页,共27页 盐城师范学院毕业设计用例位置前置条件操作步骤测试数据预期结果实际结果管理员模块1)tomcat正常启动2)Mysql连接正常3)系统运行正常点击编辑业务员信息,输入信息完成并点击保存用户名:水清映月密码:123456电话:15705117155邮箱:bbb@ohls.com所在地:苏州系统提示保存成功,并刷新列表显示业务员列表与预期结果一致1结论毕业设计能在很大程度上体现一个学生对所学知识的掌握程度。此次,我的毕业设计内容是要完成一个跟房屋租赁相关的网站类型系统。作为一个缺乏工作经验的学生来说,从起初的需求分析开始,我就碰到了问题。比如,我只对传统的房地产租赁行业的运营模式有所了解,而对于在线房屋租赁的具体实现则没有清晰的概念。这使我不得不查阅大量的资料,以扩充我的知识面。在此基础上,我还得到了指导老师对于系统具体业务实现方面的诸多建议,从而使我的需求分析工作圆满完成。在页面设计与实现的过程中遇到的麻烦也令我头疼不已。页面制作本是我的薄弱环节。我在CSS样式的编写方面不熟练,同时也缺乏必要的规范性,做起页面来不算得心应手,然而这个问题并不是能够通过得到他人帮助就能解决的问题。还好经过一段时间的学习和实践总结,我很快掌握了大部分的知识点,也了解了规范化编码带来的好处,提高了后续开发的效率。同时,在整个系统的实现过程中,我对于MVC架构的具体实现,也有了更加深刻的认识,对于SSH框架的运用也有了长足进步。MVC架构的使用,与系统设计相关。而我对于SSH框架只停留在“知其然,不知其所以然”的程度上,只知道如何使用,却不了解他的原理。这在很大程度上限制了系统功能的实现,为系统的开发造成了障碍。认识到这点之后,我着重学习了三大框架的运作机制和原理。我了解了Spring如何通过控制反转管理业务逻辑和持久层DAO,知道了Struts如何实现系统的MVC分离,懂得了Hibernate如何操纵数据库。此后,系统的开发才算水到渠成。第26页,共27页 盐城师范学院毕业设计参考文献[1]BruceEckel.ThinkinginJavaFourthEdition[M].American:PrenticeHallPTR,2006.[2]徐明华.Java Web整合开发与项目实战[M].北京:人民邮电出版社,2010.6[3]关晓伟. 房屋租赁信息系统的设计与实现[D].天津大学, 2011,12:65-66.[4]孙卫琴.精通Struts:基于MVC的JavaWeb设计与开发[J].北京:电子工业出版社,2004.[5]Donald Brown.Struts 2 in Action中文版 [M] .北京:人民邮电出版社,2009,9.[6]JamesElliott,TimothyM.O’Brien,RyanFowler.HarnessingHiberante[M].O'ReillyMedia,2008.[7]孙卫琴.Tomcat与JavaWeb开发技术详解[M].北京:电子工业出版社,2009.[8]唐汉明,翟振兴,兰丽华,关宝军,申宝柱.深入浅出MySQL—数据库开发、优化与管理维护[M].北京:人民邮电出版社,2008,4.[9]RodJohnson,JuergenHoeller,etc.TheSpringFramework-ReferenceDocumentation[EB].http://static.springframework.org/spring/docs/2.0.x/reference/index.html.[10]滁州,马金虎,朱力勇.编写基于SMTP网络应用程序[J].电脑爱好者,2003,5:92-94.第26页,共27页 盐城师范学院毕业设计致谢四年的大学生活已经进入尾声。作为一个大四的学生,回顾这段时间的记忆,有期待,有欢笑,有失落,还有拼搏。大学的四年是人生中最美好的时光,我们应该怀着感恩的心态去怀念它,把他转化为今后我们人生道路的动力源泉。在此,我要感谢我的毕业设计指导老师,秦海鸥老师。是在他的耐心帮助下,我才能如此顺利地完成我的毕业设计,为我的大学生涯画上圆满的句号。同时,我也要感谢盐城师范学院信息科学与技术学院的老师们,正是有了你们四年来的悉心教导,才能成就我的今天。最后,我还要感谢我的所有同学们,四年时间,我们相互陪伴,一起努力,共同成长。有你们的陪伴,是我的大学时代充满光彩。第26页,共27页
此文档下载收益归作者所有
举报原因
联系方式
详细说明
内容无法转码请点击此处