目录

ssm492房屋租赁平台的设计与开发+jsp

项目清单 包安装运行 官网地址 http://chenqi1990.site

ssm492房屋租赁平台的设计与开发+jsp

https://raw.githubusercontent.com/GraduationProject-springboot/.github/main/img/wx.png

github 项目仓库 开源仅有后端代码

点击播放视频 ▼

https://i.sstatic.net/Vp2cE.png

绪论

1.1课题开发背景

现在已处于信息、网络飞速发展的阶段,在生活中都离不开网络的帮助。网络不仅可以提供休闲娱乐,也可以提供办公辅助。比如工作中的信息传递、工作汇报等都离不开网络。特别是在疫情期间,为了保证大家的安全,健康码、行程码都需要网络的协助,在核酸检测时也可以通过网络进行检测结果的发布。可见,网络的重要性。

目前,计算机技术也快速发展,利用计算机开发的各种网站、应用软件、管理系统都给人们的工作带来了帮助。对于需要租赁房屋的用户来说,大多还是去中介公司找专业人员帮助,这种方式需要额外的中介费用,对刚出门的人来说是不小的开支,而自己联系房东需要大量的时间,对于想要快速找到房屋的人来说非常不适合。

1.2课题开发现状

现在房屋出租方也使用了线上的租赁系统,这种租赁系统有两种,一种是针对中介使用的办公系统,由租房者提供信息,工作人员查询信息后带看房、签订合同等。还有一种是租房者参与,租房者可以在网上查询房屋信息并预订,到现场后再决定是否租赁。但现在的房屋租赁网站普及率低,原因在于网站操作流程复杂,信息不及时,网站经常出现BUG,使租房者在预订时出错。所以这种租赁网站并不受欢迎,并不能帮助租房者实现线上房屋的预订。

1.3课题开发内容

本房屋租赁平台操作简单,采用傻瓜式的操作方法进行设计,在前台展示最及时、准确的房屋信息,帮助用户了解房屋详情。用户可以了解房屋的评价、房屋的费用等,选择合适的房屋进行线上预订看房,并可以查询订单信息,有问题也可以在线提问,管理员负责房屋信息的更新,管理订单信息、房屋留言信息,用户信息、时间段信息等。本系统可以帮助用户足不出户了解房屋信息,解决自己需要租赁房屋的问题。

1.4课题开发的目的和意义

本系统的实现可以帮助用户租赁房屋,帮助管理员减轻工作压力,为双方提供更为轻松的办公方式。使用本系统管理员可以快速的整理房屋订单信息,以便用户可以顺利入住。本系统采用SSM框架,适应时代的发展,将订单信息和房屋信息实现信息化,使信息的传递更快速、准确,本系统的设计非常有意义。

1.5论文结构安排

本论文的结构为课题资料调研阶段、课题使用技术、环境选择阶段、课题全面分析阶段、课题功能、数据库设计阶段和系统实现阶段以及最后的系统测试阶段。系统测试完成后加入系统总结、致谢、参考文献。

  1. 系统开发所使用的相关技术和环境

2.1系统开发所使用的相关技术和环境概述

本系统在开发中使用的关键技术为Java语言,Mysql数据库,SSM框架,Web技术,运行软件为Idea。

2.2 SSM框架介绍

SSM框架主要分为Spring和Mybatis两个开源的框架然后进行整合到一起的。一般是用来进行Web框架结构的开发。Spring就好比是一个项目中的工厂,集合了所有需要的Bean配置文件,当开发过程中需要特定的一些参数时候,可以直接进行调用进行实体类的构造,所以我们一般称Spring是一个项目中的粘合剂,起到非常大的作用。而核心作用是控制反转也就是loc,工作原理就是不需要开发者去单独建立不同的对象,而是让框架帮你去完成,非常的省事方便。配置的整个文件都是在Spring里进行的,然后对于不同的业务流程模式会有不同的控制器去执行,在设计过程中我们可以将具体的流程进行一些抽象性的归纳整理,这样可以重复利用一些流程模式,这样可以提高代码的使用率,使程序架构更加的精简,处理速度更快。而Springmvc在整个项目中起到一个承上启下的作用,就是当用户进行访问请求时,会先进行拦截然后通过HandlerMapping去相应的匹配所需要的Controller,然后执行操作。而框架中的Mybatiss是把jdbc进行一个封装,这样就可以让数据库底层架构变的更加的透明,这些控件架构全是围绕特定的实例展开运行的,通过配置好的文件可以和各种实体类文件进行关联,在对配置好的各个数据库进行语句映射。把页面收到的各种请求直接传给控制器,通过业务层的处理逻辑在转给持久层,最后与数据库进行交互,然后把得到的结果在返回给业务层,在传给控制器最终以可视化的图形进行数据显示,这就是一个完整的处理逻辑。

2.3 Mysql数据库介绍

Mysql数据库是一个非常灵活精巧的数据库管理系统,功能非常的强大,而且有丰富的各种编程接口,非常适合和apache和tomcat结合使用。普通应用在一些中小型的网站开发中,处理速度非常的快,而且体积很小,所以开发成本非常的低,所以非常的受青睐。Mysql是一个开放的多线程的数据库服务器,可以支持所有的系统而且很好的兼容。Mysql存储量非常的大,可以同时处理上千万条数据信息,而且采用的是标准的sql语句形式,而且是支持个性化定制的,可以根据自己的需求进行开发。

2.4 Web技术介绍

前几年的Web应用还是用的静态页面技术,用Html写的,然后放进服务器上,通过http协议进行Web服务访问,随着科技的快速发展,用户的需求越来越高,传统的静态页面已经完全不能满足用户的需求,需要根据用户不同的需求进行动态的页面信息展示。Web程序通常就是指通过浏览器进行访问的技术,通过Web的这些应用服务可以直接让用户进行访问,一个完整的Web应用程序是由不同的技术组成的,比如html、css、Vue、js等,通过这些技术进行一些结合然后生成的动态网页技术。而在一个Web服务项目中,一般分为服务器端和客户端,客户端就是通过浏览器连接网络进行服务器的访问,采用Http协议通过服务器插件进行业务处理,如果客户端用户访问的是静态的信息资源那么请求会直接进行反馈给服务器,然后直接调取相应内容执行到浏览器。如果用户访问的是动态内容信息,会把请求资源先传给WEB Container,然后连接到数据库,从数据库中调取用户所需要的数据然后传给客户端浏览器进行执行显示。

2.5 Idea软件介绍

Idea有很多优点,比如不需要单独下载Tomcat软件,软件本身自带的就有这个服务器,而且还能多运行的服务进行实时的监控,如果文件被修改了,可以及时的记录,方便用户查看。有时候在启动Idea的时候经常会遇见启动失败的情况,一般造成情况的原因是收到了电脑系统防火墙的拦截了,或者就是默认的8080端口被Tomcat端口占用了,这种情况只需要改下端口就可以了,还有一种情况就是电脑上没有安装VC9库,直接根据系统提示安装上就可以了,一般都可以轻松的解决。Eclipse支持各种版本的操作系统,比如win7,win10系统都可以很好的兼容,而且还支持各种不同的Java版本,而且运行速度是非常的快,非常适合微信小程序环境的开发使用。

2.6 Java语言介绍

Java语言是一种开源的脚本语言,他主要是通过c语言和java语言进行衍生出来的,吸取了他们的优点,使用起来更加的方便,更加方便用户学习使用,他是一种结合了其他语言而自创的一种新语法,可以更加方便快捷的执行代码,效率比之前生成的Html标签要高很多的,而且还可以执行在其他系统上进行编译后的代码,可以进行代码加密和代码自动优化,使代码执行速度更快。也可以理解为是一种预文本处理的语言,也是一种内嵌式语言,可以迁入到Html文本里一起使用,编码风格和C语言非常的相似,也是一种常用的编程语言。

2.7Jsp技术介绍

Jsp技术是一种动态的网页设计技术,可以结合静态的Html技术使用。通过响应客户端生成动态页面进行展示,Jsp技术通常是做为Java语言的脚本语言使用。Jsp技术可以实现Java项目的静态镶嵌,然后以静态为模板进行动态生成。Jsp技术中引用了XML的标签,可以调用内部的功能,还可以创建新的Jsp的标签库,创建后就可以像使用Html、XML一样的使用,非常简单。

2.8 B/S结构介绍

B/S模式最大的特点就是可以直接通过网络进行系统的访问,对于用户端来说只需要一个浏览器就可以,通过B/S模式开发的系统可以用户提供实时的在线服务,当后台数据进行更新,前台会实时进行更新,保障了数据同步,效率非常的高,非常适合电子商务网站的开发。B/S架构是从C/S架构上发展来的,传统的C/S架构是采用的客户端的形式,由于以前的互联网没有现在这么发达,所以大多的办公软件都是在局域网内使用的,可以不需要互联网就能运行,前提是计算机硬件有一定的要求,必须电脑上安装上客户端软件,才能使用,而且后期的维护也比较麻烦,需要每个设备都进行维护。而B/S架构是直接把数据信息都存储到了服务器里,然后用户端不需要安装任何的编程软件,只需要浏览器就可以直接进行访问,而且维护非常的简单方便,对用户没有任何的影响,而且交互性更好,所以更适合电子商务网站的开发和使用。

第3章 系统分析

3.1系统需求分析

互联网已经应用到了各种场景当中,为了提高工作效率,现在各行各业都开始引用了互联网的管理模式,都开始先智能化转变,科技的应用水平也反映了企业的水平,如果还是采用传统的管理方式,将会减缓企业的发展,从而降低竞争力,只有跟上时代的潮流,才能满足不同的用户需求,与时俱进才能获得更好的进步。

3.2系统可行性分析

3.2.1技术可行性分析

硬件上,目前的计算机、手机配置都是非常的高,而且都已经普及了,都能满足开发需求。软件上因为本系统采用的是SSM框架,框架结构非常清晰,很多组件系统都能自动生成,非常的简单方便,数据库采用Mysql数据库,安全稳定,各项开发技术都非常的成熟,所以从硬件和软件方面分析,本系统在技术上都是可行的。

3.2.2经济可行性分析

本系统所用到的开发软件都是免费的,而且开发本系统后期维护非常的简单,不需要过多的投入,只要保证基本的信息维护就行了。

3.2.3操作可行性分析

因为开发本系统是采用的面向对象的模式,所以每个界面都是可视化的操作界面,直接通过系统访问就可以看到系统的各个功能,而且点击所有按钮都可以马上响应,如果填写了错误的信息还会有相应的错误提示,非常方便看懂,使用起来是非常的方便。

3.3系统性能分析

很多行业现在都采用了计算机信息化管理,都通过网络来拓展自己的业务,不光可以提高管理的效率,而且还可以减少人工方面的投入,其次还可以通过网络进行企业的宣传。而本系统主要是针对房屋租赁进行开发的,用户可以直接通过网站进行房屋预订看房,非常的方便,管理员可以直接通过后台端就收到了预订信息,更加方便管理,所以说是非常适合的。因为本系统不单是针对企业内部管理使用,还额外添加了用户,所以在设计的时候就要多方面的进行考虑: (1) 首先在界面设计方面,要符合大众审美,考虑大多人的感受,而且使用起来非常的简单方便,要有各种功能操作提示,哪怕对计算机操作不熟练,也可以完成订票操作。 (2)为了保障系统的流畅运行,还要考虑到代码的编写,一定要精简,避免重复的代码,保证处理速度快,有更好的用户体验。 (3)要有一定的安全机制,保证用户信息不能泄漏。 (4)采用B/S模式进行开发,可以直接通过系统进行系统访问,更加的方便,但是需要用到网络才可以,所以要考虑到网络的稳定性。

3.4 系统功能分析

本系统的功能包括前台和后台两方面,前台的功能为房屋信息、用户登录窗口、后台管理员登录窗口等,后台的功能为用户管理、房屋留言管理、出租房信息管理、房屋订单信息管理等。在前台的主要操作人员为注册用户,可以预订看房和在线评价、收藏等,在后台的主要操作人员为管理员,负责用户信息和前台信息的管理。

3.5系统用例图

本系统的角色为管理员和用户,管理员的用例为用户管理、出租房管理、轮播图管理、出租房留言管理、出租房订单管理、基础数据管理等。管理员用例图如下图3.1所示:

/images/0400ssm/ssm492/blog.001.png

图3.1管理员用例图

用户的用例为个人资料管理和出租房浏览、出租房预订、订单管理等。用户用例图如下图3.2所示:

/images/0400ssm/ssm492/blog.002.png

图3.2用户用例图

3.6系统操作流程分析

本系统的操作流程为用户在前台浏览房屋信息后进行房屋的预约看房,可以浏览房屋的评价,预订成功后可以管理订单信息。管理员负责房屋的添加和管理并可以安排用户的房屋看房。本系统的操作流程如下图3.3所示:

/images/0400ssm/ssm492/blog.003.png

图3.3系统操作流程图

第4章 系统设计

4.1系统功能结构设计

本系统采用前台用户操作,后台管理员操作的方式进行设计,本系统的主要功能为出租房浏览、出租房预订、出租房收藏、出租房留言等。用户可以管理订单信息、管理员负责出租房信息的发布和用户订单管理等。本系统的功能结构图如下图4.1所示:

/images/0400ssm/ssm492/blog.004.png

图4.1系统功能结构图

4.2数据库设计

数据库作为一个系统中的数据存储,是非常重要的一部分,必须保障了数据库的安全,系统才能足够的完善,所以数据库的设计也是非常重要的。数据库的设计是一个系统最直观的一个表现,必须切合实际要符合用户的需求,而且不能只是停留在Demp阶段,要进行数据库的详细设计,比如数据库表,数据库字段,各个字段的主键,外键,还有数据之间的模块交互和数据中转,表与表之间的联系等,因为数据库绝对不是存储数据这么简单,还要有一个完整的数据处理流程。所以在设计的过程中一定想好怎么去运用这些数据字段,然后怎么建立表与表之间的联系,怎么进行体现,这都是数据库设计阶段需要考虑的问题。为了保证数据库的处理速度和响应时间,还要进行一定的优化,要避免有多余的字段信息,减少不必要的表,尽量用最少的表,最少的表关系去建立存储量大的数据,这样才能有更好的数据查询性能。

4.2.1数据库ER图设计

ER图是对数据库设计的初级阶段,ER图展示了实体和实体的属性,根据系统功能结构图分析出本系统的实体,本系统的实体为用户信息、管理员信息、房屋信息、预订信息、留言信息等。

(1)用户为本系统的主要使用人员,用户的属性包括姓名、年龄、性别等。用户ER图如下图4.2所示:

/images/0400ssm/ssm492/blog.005.png

图4.2用户信息ER图

(2)房屋信息为管理员管理的核心数据,房屋信息可以帮助用户预订需要的房屋。房屋信息ER图如下图4.3所示:

/images/0400ssm/ssm492/blog.006.png

图4.3房屋信息ER图

(3)管理员本系统中的管理人员,属于系统的工作人员,可以管理本系统里的所有信息。管理员信息ER图如下图4.4所示:

/images/0400ssm/ssm492/blog.007.png

图4.4管理员信息ER图

(4)预订信息为用户预订房屋后产生的,管理员可以安排用户的看房,预订信息的ER图如下图4.5所示:

/images/0400ssm/ssm492/blog.008.png

图4.5预订信息ER图

(5)留言信息的负责人员为用户,用户可以发布留言内容,留言信息的ER图如下图4.6所示:

/images/0400ssm/ssm492/blog.009.png

图4.6留言信息ER图

(6)本系统的实体关系ER图如下图4.7所示:

/images/0400ssm/ssm492/blog.010.png 图4.7系统实体关系ER图

4.2.2数据库表设计

数据库表就是采用表格的形式记录数据,数据包括字段类型、长度、主外键等信息。根据上节的数据库ER图设计的本系统的数据库表为房屋信息表、订单信息表、留言信息表、用户信息表等。本系统的数据库表如下表4.1-4.9所示:

表4.1 chuzufang

/images/0400ssm/ssm492/blog.011.png

表4.2 chuzufang_collection

/images/0400ssm/ssm492/blog.012.png

表4.3 chuzufang_liuyan

/images/0400ssm/ssm492/blog.013.png

表4.4 chuzufang_order

/images/0400ssm/ssm492/blog.014.png

表4.5 config

/images/0400ssm/ssm492/blog.015.png

表4.6 dictionary

/images/0400ssm/ssm492/blog.016.png

表4.7 token

/images/0400ssm/ssm492/blog.017.png

表4.8 users

/images/0400ssm/ssm492/blog.018.png

表4.9 yonghu

/images/0400ssm/ssm492/blog.019.png

第5章 系统实现

5.1前台界面的实现

在前台界面里的主要使用人员为用户,游客可以通过注册成为用户,在前台里展示的主要信息为出租房信息。前台界面的实现效果如下图5.1所示:

/images/0400ssm/ssm492/blog.020.png

图5.1前台界面的实现效果

5.2出租房信息功能的实现界面

用户登录后可以浏览所有的出租房。出租房可以直接看到图片和价格,方便用户对比。出租房信息功能的实现界面如下图5.2所示:

/images/0400ssm/ssm492/blog.021.png

图5.2出租房信息功能的实现界面

5.3系统推荐功能的实现界面

点击系统推荐功能,可以推荐所有的房屋,用户在房屋详情里可以查看房屋的评价、房屋的价格以及房屋的图片、电话等信息。系统推荐功能的实现界面如下图5.3所示:

/images/0400ssm/ssm492/blog.022.png

图5.3系统推荐功能的实现界面

5.4房屋详情功能的实现界面

在房屋详情界面里可以发表留言和预订看房。房屋详情功能的实现界面如下图5.4所示:

/images/0400ssm/ssm492/blog.023.png

图5.4房屋详情功能的实现界面

5.5预约看房功能的实现界面

用户选择喜欢的房屋后可以预约实地看房,预约看房功能的实现界面如下图5.5所示:

/images/0400ssm/ssm492/blog.024.png

图5.5预约看房功能的实现界面

5.6房屋收藏界面的实现界面

在房屋详情界面里可以看到收藏房屋,点击收藏按钮就可以快速收藏房屋。房屋收藏功能的实现界面如下图5.6所示:

/images/0400ssm/ssm492/blog.025.png

图5.6房屋收藏界面的实现界面

5.7我的功能的实现界面

在我的功能界面里用户可以管理自己收藏的房屋信息和订单信息以及修改个人资料。我的功能的实现界面如下图5.7所示:

/images/0400ssm/ssm492/blog.026.png

图5.7我的功能的实现界面

5.8房屋订单管理功能的实现界面

用户预订看房后可以管理订单信息,并查看审核结果。房屋订单管理功能的实现界面如下图5.8所示:

/images/0400ssm/ssm492/blog.027.png

图5.8房屋订单管理功能的实现界面

5.9管理员个人中心管理功能的实现界面

管理员可以修改个人资料和密码。管理员个人中心管理功能的实现界面如下图5.9所示:

/images/0400ssm/ssm492/blog.028.png

图5.9管理员个人中心管理功能的实现界面

5.10管理员出租房管理功能的实现界面

管理员可以上新出租房、审核出租房的订单信息和查看房屋的留言、收藏等信息。管理员出租房管理功能的实现界面如下图5.10所示:

/images/0400ssm/ssm492/blog.029.png

图5.10管理员出租房管理功能的实现界面

5.11基础数据管理功能的实现界面

本功能由管理员负责,可以管理出租房的类型和时间段信息。基础数据管理功能的实现界面如下图5.11所示:

/images/0400ssm/ssm492/blog.030.png

图5.11基础数据管理功能的实现界面