摘 要
房屋出售租赁系统是租赁中重要的一环,为了方便用户能够在网站上查看房源信息、出租房信息、系统公告、留言板,于是开发了基于springboot框架设计与实现了一款简洁、轻便的房屋出售租赁系统。本系统解决了租赁事务中的主要问题,包括以下多个功能模块:房源信息、出租房信息、租房订单、售房订单、看房申请。
本系统采用了JAVA语言、springboot框架,采用了B/S设计模式,前端采用HTML、CSS、JS技术,页面简洁美观。凭借ORM技术将相关数据映射到数据库中,数据采用MySQL数据库进行存储,界面化操作便于上手。本系统具有良好的易用性和安全性,系统功能齐全,可以满足房屋出售租赁管理的相关工作。
关键词:房屋出售租赁系统;JAVA语言;springboot框架;MySQL数据库;
Abstract
The housing sales and leasing system is an important part of leasing. In order to facilitate users to view housing information, rental housing information, system announcements, and message boards on the website, a concise and lightweight housing sales and leasing system based on the Spring Boot framework was developed and implemented. This system solves the main problems in leasing transactions, including the following multiple functional modules: housing information, rental housing information, rental orders, sales orders, and viewing applications.
This system adopts JAVA language, spring boot framework, B/S design mode, and HTML, CSS, and JS technology in the front end. The page is concise and beautiful. Relying on ORM technology to map relevant data into a database, the data is stored in a MySQL database, and the interface operation is easy to use. The system has good usability and security, and has complete functions, which can meet the relevant work of housing sales and rental management.
Key words: housing sales and leasing system; JAVA language; Spring boot framework; MySQL database;
目 录
摘 要 I
Abstract II
1 绪 论 1
1.1课题的背景和意义 1
1.1.1课题的背景 1
1.1.2开发课题的意义及作用 1
1.2论文的结构 2
1.3小结 2
2 相关技术简介及部署环境说明 3
2.1 Spring Boot框架 3
2.2 JAVA语言介绍 3
2.3 Tomcat服务器简介 4
2.4 MySQL数据库简介 4
2.5 B/S架构 4
2.6小结 5
3 需求分析 6
3.1房屋出售租赁系统的可行性分析 6
3.2房屋出售租赁系统的需求分析 6
3.3系统流程设计 7
3.4小结 7
4 系统总体设计 8
4.1数据库设计原则 8
4.2模型的设计 9
4.3小结 13
5 系统详细设计与实现 14
5.1前台系统功能模块 14
5.2后台管理员功能模块 16
5.3后台用户功能模块 18
5.4后台房东功能模块 18
5.5小结 20
6 系统测试 21
6.1软件测试的定义 22
6.2系统测试的目的 23
6.3系统测试方法 25
6.4注册、登录模块测试 26
6.5小结 26
结 论 28
参考文献 29
致 谢 29
1 绪 论
1.1课题的背景和意义
1.1.1 课题的背景
随着科学技术的不断发展,计算机现在已经成为了社会的必需品,人们通过因特网可以获得海量的信息,这些信息可以和各行各业进行关联,房屋出售租赁系统也不例外[1]。
传统线下方式管理的起源可以追溯到20世纪60年代末期。当时的计算机技术已经步入了实用技术阶段,由于各行业的工作大部分为高重复度的手工查找,这些工作耗费了大量人力资源又很容易出现细小的差错。这些问题恰恰可以通过计算机来解决,只是碍于技术条件限制,所以信息管理系统的发展比较迟缓。
直到20世纪90年代末信息管理系统迎来了革命性变革,由于计算机技术的高速发展和数据库技术、客户\服务器技术和因特网也都趋于成熟稳定。这为实现房屋出售租赁系统提供了强有力的基础。这次变革使房屋出售租赁系统的重心转移到计算机技术的角度上,用关系型数据库处理几乎所有与房屋出售租赁系统有关的数据。设计界面化、报表工具生成和信息分析工具的信息共享使得管理者脱离了日常许多繁琐与重复的工作,有更多精力长远规划房屋出售租赁系统发展和系统维护[2]。
1.1.2开发课题的意义及作用
面对高重复性机械性的工作,工作者不可避免的会出现失误,而改正失误的成本也相当高。特别是近年来,互联网的来临,无论是对人类社会,还是对政治、经济等多方面领域影响深远,也给新时代的信息管理和信息系统带来新的机遇和挑战。网络电脑化越深入,影响越大,社会就越进入互联网时代,房屋出售租赁系统作为计算机应用,适合做单一重复的操作,对高速发展的技术有着更强的适应性,只需要维护更新得当,大大的降低了人力成本[3]。房屋出售租赁系统有以下几个特性:
(1)高自由度:房屋出售租赁系统是一种人性化设计的系统,可以根据用户的需要来添加不同功能的组件和界面,让房屋出售租赁系统更加的符合操作者的使用习惯,提供更多的便利功能。
(2)高检索率:传统管理模式信息检索也需要系统的支持,不过纸质载体的体积大,占地面积广,复原困难等问题,就算检索到了位置,也会出现找不到资源的情况,房屋出售租赁系统可以不受物理空间的限制,能储存的资料也没有空间的限制,即搜即看,大大的提高了资源搜索效率。
(3)针对性:该系统是根据设计需求为导向来开发房屋出售租赁系统的设计,所以针对性较强。
(4)实用性:该设计能够满足房屋出售租赁系统的实际的功能需求,能够在实际中让用户真正使用到,具有实际的应用价值,这将会及广大使用者,更快、更好地满足了他们的需求,为现代信息管理系统的建设提供了软件支持[4]。
1.2 论文的结构
本文的主体结构如下:
第一章主要对当下的房屋出售租赁系统的背景和开发意义进行了重点论述。
第二章重点介绍本房屋出售租赁系统的相关的开发技术,并对软件的部署环境进行必要的说明。
第三章重点对房屋出售租赁系统进行需求分析和可行性论述。
第四章主要对房屋出售租赁系统各个模块总体的设计以文字加图表的形式进行说明。
第五章详细的对各个模块进行阐述。
第六章对房屋出售租赁系统的测试方法进行说明及测试结果的展示[5]。
1.3小结
本章结合了房屋出售租赁系统的历史和优势说明了开发房屋出售租赁系统的必然性和重要性,结合实际的系统体验来阐述开发房屋出售租赁系统的实际意义,粗略的介绍了此次系统的主要开发步骤和论文的安排。
2 相关技术简介及部署环境说明
2.1 Spring Boot框架
Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。
2.2 JAVA语言介绍
Java语言作为现在主流编程语言之一,就是因为它有很多自己的特点和优势。
Java语言具有以下几个特点:
(1)跨平台性
平时所说的一次编译,到处执行,指的就是这个跨平台性。Java的源代码编译后会生成字节码文件,这些文件可以被Java虚拟机执行,得到想要的结果。在设备上安装对应的虚拟机,Java的字节码文件就可以运行。
(2)面向对象
Java是一个面向对象的编程语言。面向对象是指把属性和方法进行封装,通过创建的对象调用里面的方法,实现一些功能。
(3)多线程
Java是支持多线程的,它允许在一个程序中同时开启多个线程,同时处理多个任务,这样可以提高它的效率。
Java语言对于开发工具要求不高,有专业的编程工具Eclipse会更顺利编程,但是,没有专业的编程软件,用记事本也能进行编辑。
2.3 Tomcat服务器简介
Tomcat是Apache公司的研发并发布的产品。 Tomcat 是一个小型的轻量级应用服务器, 在中小型系统和并发访问 用户不是很多的场合下被普遍使用。它还具有很强的稳定性。Tomcat是嵌入式的,不需要进行war文件的部署。并且,它也同时简化了Maven的配置。简化了程序员的开发步骤。
2.4 MySQL数据库简介
MySQL是一种关系型的数据库管理系统,属于Oracle旗下的产品。MySQL的语言是非结构化的,使用的用户可以在数据上进行工作。这个数据库管理系统一经问世就受到了社会的广泛关注。在各个方面,与同等的数据库相比,MySQL的优点极为突出,它的运行速度快,适用的范围广泛,而且数据库的安全性这一方面独树一帜。在语言结构方面,MySQL的语言简单,其他数据库需要一大段代码来实现的操作,MySQL仅需要一小部分代码甚至几行。综上所述,MySQL这种关系型数据库管理系统,已经成为了开发者进行项目的数据开发、存储的不二之选。MySQL的功能也多种多样,如数据操纵和数据库的建立维护等。而且该数据库的数据共享性高、冗余度低而且容易扩充。MySQL在安全性这一方面也具有自身的特点,它应用了用户的标识和鉴别技术,对试图和数据进行加密,确保资料信息的可靠性。介于数据库系统的功能与强大等性质之间,本数据库系统的设计中主要使用了MySQL实现对数据的处理。房屋出售租赁系统运用MySQL数据库,在Web应用这一块,MySQL是最好的选择。对于该系统整个的开发、搭建、运行和维护具有极其重要的作用。
2.5 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.6小结
本章详细的介绍了开发房屋出售租赁系统所需要的技术与工具,工欲善其事必先利其器,对于技术和工具了解的越多越清晰,才会在开发过程中如鱼得水。
3 需求分析
3.1房屋出售租赁系统的可行性分析
房屋出售租赁在社会中都广泛存在,房屋出售租赁系统是本平台不可或缺的一部分,对房屋出售租赁系统的可行性分析基于当下的互联网背景,从经济、市场、技术、法律和用户使用上进行了调查,从此验证次系统开发的可行性[6]。下面分别从以下几点进行分析:
(1)经济可行性分析:由于开发本系统主要是为了测试自身的专业和设计能力,基本不考虑经济效益和后来的发展方向,只注重自身水平和设计能力的提高,并且对自身经济的要求也不高,只要有一台普通电脑就可以了,所以不需要考虑经济问题[7]。
(2)市场可行性分析:房屋出售租赁系统作为非盈利性的系统,其职能在方便人民群众。图书馆作为承载知识的载体,高校与社会都有不计其数的图书馆,而房屋出售租赁系统需要平台的支撑,自然在市场上可行[8]。
(3)技术可行性分析:对系统进行分析,房屋出售租赁系统的大部分功能都需要管理员完成,springboot框架只需要添加少量代码就可以很好适配管理员功能。也可以提高HTML文件的复用率,提高效率。在数据库方面,ORM简化了表的创建和使用,采用了Oracle旗下开源的关系型数据管理系统MySQL,多表存储的特点使数据更加规范化,增删改查更容易。综上所述,技术开发上并无太大的难点。
(4)用户使用可行性分析:鉴于系统的使用用户为高校用户,有统一的学号和一定的知识水平,且系统无需用户有过多的操作,界面清晰简洁,用户使用可行性上无问题[9]。
(5)法律可行性分析:本应用的开发内容均在法律范围内得到支持,并已经通过备案。
3.2房屋出售租赁系统的需求分析
需求分析在系统开发中有着十分重要的作用。软件项目凭借软件工程的思想和步骤可以大大的提高开发效率,缩短软件开发周期,保证了软件项目的质量。需求分析作为软件工程方法中的一步是至关重要的。软件需求工程是一门分析并记录软件需求的学科。需求分析简单的来说就是用户需要什么,系统需要什么,对此进行问题的列举,等级的排列,需要缜密的思分析和大量的调研[10]。
房屋出售租赁系统在国内有很多值得借鉴的例子,功能也都趋于完善,因此此次房屋出售租赁系统将轻量化开发,要完成以下功能:
(1)要支持完整的用户注册,登录功能,账号的管理通过管理员来实现。
(2)房屋出售租赁系统的首页界面简单明了,功能让用户快速上手,一目了然,不需要教程也能直接使用。
(3)为了用户能够方便修改个人信息,查看出租房信息、租房订单、售房订单、看房申请功能。
(4)管理员通过后台系统来完成对所有信息的编辑,包括添加、删除等操作。
本课题要求实现一套房屋出售租赁系统,系统主要包括管理员模块和用户、房东模块功能模块。
(1)管理员用例图如下所示:
图3-1管理员用例图
(2)房东用例图如下所示:
图3-2房东用例图
(3)用户用例图如下所示:
图3-3用户用例图
3.3系统流程设计
3.3.1 系统开发流程
房屋出售租赁系统的设计和开发,首先要对用户的实际使用需求和具体情况进行细致的分析,分析出系统要完成的全部功能,然后再针对整个系统的工作流程和功能进行设计,力求每个模块都能够达到用户的要求,最后通过测试来解决问题,保证系统的稳定和正常的运转,本系统的开发流程如图3-4所示。
图3-4系统开发流程图
3.3.2 用户登录流程
登录流程实现了管理员和其他用户的登录,在登录页面需要用户填写自己的信息,前端页面会将信息传递给后端接口,然后查询数据库确定该身份有效后登录成功,否则此用户登录失败,需要重新填写信息,进行再次验证,如图3-5所示。
图3-5登录流程图
3.3.3 系统操作流程
系统操作流程分析是软件开发过程中的一个关键环节,它是整个系统整体的运行过程,必须保证其中的每一个步骤都是确定的,这样一个规范的流程图可以使开发者易于理解,快速的投入到接口开发中,从而提升系统开发效率。
同时,流程图还能减少开发者对系统操作流程产生歧义和降低沟通的成本,系统操作流程如图3-6所示。
图3-6系统操作流程图
3.3.4 添加信息流程
系统的正常运行离不开数据的支撑,因此,在本系统中添加了数据插入功能,数据库中数据的缺失,会直接影响到数据的查询结果,查询结果错误又会导致逻辑处理出现偏差,最终导致系统性错误或故障,所以在对系统进行数据添加操作时,必须要对数据进行合法性校验,确定此条数据是否有惟一的主关键字和字段是否允许为空等等,若数据库表中不允许某字段为空,而程序没有进行该字段非空逻辑校验,那么就会出现数据存储失败,可能因此造成严重系统后果。添加信息流程如图3-7所示。
图3-7添加信息流程图
3.3.5 修改信息流程
因为使系统的使用者是人,所以难免会有疏忽,从而造成系统输入的信息有误。或者由于其他原因导致数据发生改变,使得必须对系统内的数据进行相应的调整,所以在程序运行中,数据的修改操作是不可缺少的重要环节。
在进行数据更新时,必须要有一个惟一的主关键字,以便数据库能够查询到相应的数据;另外,还必须遵守数据插入过程的操作规范,以确保数据的正确性。修改信息流程图如图3-8所示。
图3-8修改信息流程图
3.3.6 删除信息流程
删除操作在系统中并非是必须的,可根据用户及系统的需要来决定是否添加删除功能,删除操作就是使用delete语句将数据库中的某一匹配数据删除,因为此操作会导致用户数据丢失,所以为了避免使用者误按删除键,应在用户点击删除按钮时添加一个提示确认弹窗,当用户确定要删除时,再进行数据库的操作,并且在删除操作完成后要对用户进行反馈。删除信息流程图如图3-9所示。
图3-9 删除信息流程图
3.4小结
房屋出售租赁系统旨在让用户能够轻松便捷的查询信息,让管理员的工作负担减轻。本章主要对房屋出售租赁系统的经济、技术、用户使用、法律、市场可行性进行分析。确认可行后,对房屋出售租赁系统进行了需求分析,从用户、房东和管理员角度思考了可能会有的需求,是后续论文和应用开发的基础指导[11]。
4 系统总体设计
此次房屋出售租赁系统通过springboot框架。springboot适合快速构建Web应用。springboot将B/S设计模式中的视图分成了View模块和Template模块两部分,将动态的逻辑处理交给View处理,页面通过Template来实现。Model和Template由View连在一起,如此划分后,程序中的每一部分只做一件事情,耦合度大大降低,便于开发者管理。为了更好的去理清本系统整体思路,对该系统以结构图的形式表达出来,设计实现该房屋出售租赁系统的功能结构图如下所示:
图4-1 系统总体结构图
4.1 数据库设计原则
数据库设计之后,根据数据库关系,可以更加清晰地了解到数据库结构,每一个数据表之间的关系,再创建数据表。快速更改和查询对应的信息,有了数据库就不用在程序和代码中寻找。
分析房屋出售租赁系统的数据结构后,在E-R图中分析管理员登录时的模式,需要输入用户名与密码、角色,管理员信息E-R如图4-2所示。
图4-2 管理员信息E-R图
用户信息E-R图如图4-3所示。
图4-3用户信息E-R图
房东信息E-R图如图4-4所示。
图4-4房东信息E-R图
看房申请E-R图如图4-5所示。
图4-5看房申请E-R图
4.2模型的设计
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,该系统中存在多个自定义模型,下面依次进行介绍。
表4-1:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-2:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-3:租房订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dingdanbianhao varchar 200 订单编号
fangyuanmingcheng varchar 200 房源名称
fangyuanleixing varchar 200 房源类型
fangzihuxing varchar 200 房子户型
fangyuanquyu varchar 200 房源区域
jutiweizhi varchar 200 具体位置
mianji varchar 200 面积
zujin varchar 200 租金
fangdongzhanghao varchar 200 房东账号
fangdongxingming varchar 200 房东姓名
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
zulinshijian datetime 租赁时间
ispay varchar 200 是否支付 未支付
表4-4:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-5:出租房信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fangyuanmingcheng varchar 200 房源名称
fangyuanleixing varchar 200 房源类型
fangzihuxing varchar 200 房子户型
fangyuanquyu varchar 200 房源区域
fangyuantupian longtext 4294967295 房源图片
zhuangtai varchar 200 状态
jutiweizhi varchar 200 具体位置
mianji varchar 200 面积
zujin varchar 200 租金
fangdongzhanghao varchar 200 房东账号
fangdongshouji varchar 200 房东手机
fangdongxingming varchar 200 房东姓名
fabushijian datetime 发布时间
fangyuanxiangqing longtext 4294967295 房源详情
表4-6:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
mima varchar 200 密码
xingbie varchar 200 性别
lianxidianhua varchar 200 联系电话
touxiang longtext 4294967295 头像
表4-7:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-8:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-9:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-10:售房订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
dingdanbianhao varchar 200 订单编号
fangyuanmingcheng varchar 200 房源名称
fangyuanleixing varchar 200 房源类型
fangzihuxing varchar 200 房子户型
fangyuanquyu varchar 200 房源区域
jutiweizhi varchar 200 具体位置
mianji varchar 200 面积
meimijiage varchar 200 每米价格
zongjine varchar 200 总金额
fangdongzhanghao varchar 200 房东账号
fangdongxingming varchar 200 房东姓名
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
goumaishijian datetime 购买时间
ispay varchar 200 是否支付 未支付
表4-11:系统公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-12:留言板
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 留言人id
username varchar 200 用户名
avatarurl longtext 4294967295 头像
content longtext 4294967295 留言内容
cpicture longtext 4294967295 留言图片
reply longtext 4294967295 回复内容
rpicture longtext 4294967295 回复图片
表4-13:看房申请
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fangyuanmingcheng varchar 200 房源名称
fangyuanleixing varchar 200 房源类型
fangdongzhanghao varchar 200 房东账号
fangdongxingming varchar 200 房东姓名
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
shoujihao varchar 200 手机号
shenqingshijian datetime 申请时间
shhf longtext 4294967295 回复内容
表4-14:房子户型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fangzihuxing varchar 200 房子户型
表4-15:房源信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fangyuanmingcheng varchar 200 房源名称
fangyuanleixing varchar 200 房源类型
fangzihuxing varchar 200 房子户型
fangyuanquyu varchar 200 房源区域
fangyuantupian longtext 4294967295 房源图片
zhuangtai varchar 200 状态
jutiweizhi varchar 200 具体位置
mianji varchar 200 面积
meimijiage varchar 200 每米价格
zongjine varchar 200 总金额
fangdongxingming varchar 200 房东姓名
fangdongzhanghao varchar 200 房东账号
fangdongshouji varchar 200 房东手机
fabushijian datetime 发布时间
fangyuanxiangqing longtext 4294967295 房源详情
表4-16:房源类型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fangyuanleixing varchar 200 房源类型
表4-17:房东
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
fangdongzhanghao varchar 200 房东账号
fangdongxingming varchar 200 房东姓名
mima varchar 200 密码
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
shenfenzheng varchar 200 身份证
fangdongshouji varchar 200 房东手机
nianling varchar 200 年龄
4.3小结
本章介绍了房屋出售租赁系统各个模块以及之间的相互联系,从宏观角度上介绍了每一个模块的作用,而后通过表格的方式介绍了每一个模型的属性,最后通过多张ER图,说明了实体间的联系。
5 系统详细设计与实现
按照软件工程的流程来说,在系统的详细设计与实现阶段,要把模块、视图、模板进行相应的组合完成一个个所需的功能,此章将会把设计中模块进行说明如何设计和实现的。
5.1前台系统功能模块
当用户打开系统的网址后,首先看到的就是首页界面。在这里,用户能够看到房屋出售租赁系统的导航条显示首页、房源信息、出租房信息、系统公告、留言板、后台管理、个人中心等。系统首页界面如图5-1所示:
图5-1系统首页界面
在系统首页点击注册/登录按钮,在注册、登录界面填写信息完成后,单击注册或者登录操作,如图5-2 5-3所示:
图5-2 用户注册界面
图5-3 用户登录界面
点击房源信息,用户在房源信息页面搜索栏输入房源名称、房源类型、房子户型、房源区域、状态、房东姓名,进行查询,还可以查看房源名称、房源类型、房子户型、房源区域、房源图片、状态、具体位置、面积、每米价格、总金额、房东账号、房东姓名、房东手机、发布时间等信息,还可以点击购房、看房或者收藏等操作,如图5-4所示。
图5-4房源信息界面图
点击出租房信息,用户在出租房信息页面搜索栏输入房源名称、房源类型、房子户型、房源区域、状态、房东姓名,进行查询,还可以查看房源名称、房源类型、房子户型、房源区域、房源图片、状态、具体位置、面积、租金、房东账号、房东姓名、房东手机、发布时间等信息,如有需要可以点击租赁、看房、收藏等操作,如图5-5所示。
图5-5出租房信息界面图
用户点击个人中心,在个人中心页面可以更新个人详细信息,还可以对我的收藏进行详细操作;如图5-6所示:
图5-6个人中心界面
5.2 后台管理员功能模块
管理员登录,通过登录页面输入用户名、密码、选择角色等信息,进行登录操作,如图5-7所示。
图5-7管理员登录界面图
管理员点击登录摁钮页面跳转到房屋出售租赁系统对系统首页、个人中心、用户管理、房东管理、房子户型管理、服务类型管理、房源类型管理、房源信息管理、出租房信息管理、租房订单管理、售房订单管理、看房申请管理、留言板、系统管理等功能,进行相应操作,如图5-8所示。
图5-8管理员功能界面图
管理员点击用户管理,在用户管理页面对用户账号、用户姓名、性别、联系电话、头像等信息,进行查询,新增或删除用户信息等操作。如图5-9所示:
图5-9用户管理界面
管理员点击房东管理,在房东管理页面对房东账号、房东姓名、性别、头像、身份证、房东手机、年龄等信息,进行查询,新增或删除房东信息等操作。如图5-10所示:
图5-10房东管理界面
管理员点击房源信息管理,在房源信息管理页面对房源名称、房源类型、房子户型、房源区域、房源图片、状态、具体位置、面积、每米价格、总金额、房东账号、房东姓名、房东手机、发布时间等信息,进行查询、新增或删除房源信息等操作。如图5-11所示:
图5-11房源信息管理界面
管理员点击出租房信息管理,在出租房信息管理页面对房源名称、房源类型、房子户型、房源区域、房源图片、状态、具体位置、面积、租金、房东账号、房东姓名、房东手机、发布时间等信息,进行查询、新增或删除出租房信息等操作。如图5-12所示:
图5-12出租房信息管理界面
管理员点击租房订单管理,在租房订单管理页面对订单编号、房源名称、房源类型、房子户型、房源区域、具体位置、面积、租金、房东账号、房东姓名、用户账号、用户姓名、租赁时间、是否支付等信息,进行查询或删除租房订单等操作。如图5-13所示:
图5-13租房订单管理界面
管理员点击售房订单管理,在售房订单管理页面对订单编号、房源名称、房源类型、房子户型、房源区域、具体位置、面积、每米价格、总金额、房东账号、房东姓名、用户账号、用户姓名、购买时间、是否支付等信息,进行查询或删除售房订单等操作。如图5-14所示:
图5-14售房订单管理界面
5.3 后台用户功能模块
管理员登录,通过登录页面输入用户名、密码、选择角色等信息,进行登录操作,如图5-15所示。
图5-15 用户登录界面图
用户点击后台管理,然后页面跳转到系统后台,在用户主页面,主要包括对系统首页、个人中心、租房订单管理、售房订单管理、看房申请管理等功能进行操作。用户主页面如图5-16所示:
图5-16 用户主界面图
5.4后台房东功能模块
房东注册登录,通过注册登录页面输入用户名、密码、选择角色等信息,进行注册登录操作,如图5-17所示。
图5-17 房东注册登录界面图
房东点击后台管理,然后页面跳转到系统后台,在房东主页面,主要包括对系统首页、个人中心、房源信息管理、出租房信息管理、租房订单管理、售房订单管理、看房申请管理等功能进行操作。房东主页面如图5-18所示:
图5-18 房东主界面图
5.4 小结
本章介绍了房屋出售租赁系统的各个模块和实现功能,注册和功能展示,对模块下的关键功能进行了介绍,并通过截图展示了实现效果,每个模块的编写都以用户为中心,方便用户为原则设计的。
6 系统测试
6.1软件测试的定义
在软件测试的过程之中,为了保证软件测试的各项工作能够安全有序地进行,就要对整个测试过程进行有效的干预或管理[12]。
我们要清楚的是,无论从理论上,还是从经验上,我们都无法发现软件系统中的所有错误,一个软件系统必定存在着缺陷,软件测试必然有一定的局限性。
6.2 系统测试的目的
任何人系统开发中也不能保证没有一点错误,在开发的过程中错误是不可避免的,所以在发现错误时要及时改正,不能让错误一直存在,否则会引发系统崩溃等不可小觑的后果,所以才需要系统测试来在一定程度上避免这些问题的发生。在测试中发现错误并及时改正才会让系统长久稳定的运行,虽然这是耗时耗力的,但为了系统能够长期使用,系统测试这一步骤也是十分重要的[13]。
为实现系统中各个模块的功能,系统测试是必须的,这样才能判定系统是否能准确的实现预想的功能。在正式使用系统前必要的步骤就是针对系统进行测试,确保系统的准确性,以供使用。
6.3 系统测试方法
在测试中发现问题一定要立马寻找解决办法,不要妄图通过偶然的概率对错误不管不问,只有认真测试解决问题,才能保证房屋出售租赁系统的质量,可以极大的缩短开发的时间。
测试时不要一错再错,同样的错误一起解决,这样才能提高系统的稳定性和安全性。
6.4注册、登录模块测试
(1) 注册用户时输入两次不同的密码,如果不通过为测试通过。注册用户时输入不符合规范的姓名,如果出现提示为测试通过。注册用户时输入非纯数字的学号,如果出现提示为测试通过。
(2) 登录用户时输入多次不同的用户名、密码,如果不通过为测试通过。登录用户时输入的用户名不正确,如果出现提示为测试通过。
6.5小结
本章采用的是动态测试和黑盒测试方法进行测试,查看程序在运行过程中发现可能的错误操作,用测试用例来检测应用的稳定性,安全性。并在测试过程严格按照测试标准进行测试,保证房屋出售租赁系统能够安全运行,减少差错[14]。
结 论
本次论文介绍了开发一款基于springboot的房屋出售租赁系统的全部过程,该系统运用了java语言进行编写、MySQL数据库存储数据、B/S设计模式、搭建出了一款简洁方便的房屋出售租赁系统,于是看来我对整个软件的开发过程有了更全面的理解,其中也包括了整个操作过程。我对于系统的前后台如何协调进行了深层次的了解。同时,通过使用不同的编程语言,也加深了我对不同的知识和学习方法的了解。
从论文选题到具体每一步功能的实施,我都遇到了一个又一个的难点问题。因为我只是接触到编程的一点点皮毛知识,没有深入了解过,更没有能力去发展一个大型的系统。刚开始的时候,我对此一无所知。我在意识到自己现有的能力和基础之后,我通过书籍和网络查找相关的信息来补充自己的不足,去学习更多的知识。在有了一个比较完善的理论架构后,我就有了一个比较明确的目标,然后我开始寻找和房屋出售租赁系统相关的话题,找出一些基础的架构,并着手进行编写代码。在实际的编程过程中,我花了大量的时间来处理各种不同的逻辑问题。在编写该程序的过程中,我也遇到了很多以前从未遇到的BUG。我用了百度,请教老师,和同学商量等方法,也在网上请教了专业人士,让自己可以更好的明白自身问题并解决问题。
参考文献
[1] 王兆媛. 基于springboot框架的考勤管理系统的设计与实现[D]. 吉林大学2019.
[2] 刘红梅. 基于 UML 的宿舍管理建模[J]. 计算机与现代化,2019.
[3] 肖旻, 陈行. 基于java技术编程特点及应用之探讨[J]. 电脑知识与技术, 2019(34):8177-8178.
[4] 郑岚. java访问MySQL数据库[J]. 电脑编程技巧与维护, 2020(6):59-61.
[5] 刘班.基于springboot快速开发Web应用[J].电脑知识与技术,2020,5(07):1616-1618.
[6] 周文豪.数字租赁以及RFID在世界企业中的应用状况[J].中国电子商情(RFID技术与应用),2019(03):65-70.
[7] MARTELLI A, RAVENSCROFT A, ASCHER D. java cookbook[M]. CA:O’Reilly Media. Inc, 2019.
[8] 徐鑫. 中小型图书馆网站设计与实现[D].郑州大学,2021.
[9] 马卫.基springboot的房屋租赁系统的设计与实现[J].电脑知识与技术,2020, 08(18):4310-4311.
[10] 曹玉良. 软件开发项目中的需求分析探讨[J]. 科技展望, 2019, 27(3).
[11] 周仁平. 教育技术学术博客研究[J]. 软件导刊(教育技术), 2019(6):88-90.
[12] Li Z. Design and Implementation of the Software Testing Management System Based on springboot[J]. Applied Mechanics & Materials, 2020, 525:707-710.
[13] MOORE D, WILLIAM B R. Professional java frameworks:Web 2.0 programming with springboot and Turbogears[M].USA:Wiley Publishing, Inc. 2019
[14] 于园园. 软件测试技术与测试管理研究[J]. 江苏科技信息, 2020(7):66-68.
[15] 朱晓敏. 软件测试的相关技术应用研究[J].电子测试,2019(1):122-123.
致 谢
在如此特殊时间里,我能顺利将毕业设计和论文完成,这都要归功于xxx老师的无私的帮助,悉心的教导。为我指引方向,解答疑惑,每个问题都能得到专业的解释,让我在解惑的同时又能对语言和框架的理解更加深入。
通过这次毕业设计,我了解了怎样将理论联系到实际,收获到了许多书本上不曾有过的知识,也将知识融入自己的设计中进行了努力,拥有了成就感。
我也发觉了规划计划和查阅资料的重要性,规划计划让你每一步都有明确的目标,按照计划走能少走很多弯路,省去很多不必要的麻烦。Java是一门发展迅速,改动较大的语言,就需要在网络上不断寻找新的文章,合适的版本和技术逐渐完善程序,解决各种各样的小问题。
以上,毕业设计磨练了我的开发技术和理论知识,这为我以后的道路打下了坚实的基础,这段经历也会成为我人生中宝贵的财富。
最后,我要再次感谢xxx老师对我的帮助,和同学们在我设计过程中提出的意见和建议。