摘要
随着城市化程度的推进,越来越多的人涌入城市,同时也带来的旺盛的租房需求,传统的房屋出租管理依赖人 工记录的方式难以满足人们对房屋出租管理的需求。因此,本文根据房屋出租信息化的需求设计一款基于房屋出租 的管理系统。本文设计的房屋出租管理系统采用SSM框架、JSP技术与数据库技术等结合,利用三层体系结构,通过浏览器端 与服务器端的数据交流,并将数据通过数据库技术进行存取。 本文首先从系统的关键技术介绍入手,对系统的目标 以及需求进行分析,对系统的功能设计与数据库设计,完成系统的实现与测试,主要实现系统注册模块功能、系统 登录功能、普通用户、管理员以及信息发布功能的实现,针对功能进行测试,显示系统运行稳定,能很好的服务于 用户的出租、求组需求。
关键词:web;房屋出租;SSM;JSP
第1章 绪论
1.1 项目研究背景
随着我国经济的快速发展,带动人口的流动,人们生活居住工作不限于一地,同时房价也在水涨,人口在城市 的流动性也带动房屋出租的市场,呈现着旺盛的需求[1]。传统的房屋租赁依赖于人工记录和传播出租信息,难以满 足现代化的城市租房需求,因此如何将房屋出租信息化管理成为了租房客和租房主的迫切需求[2]。进入21世纪,互 联网深入的人们的生活方方面面,“衣食住行”相关的各类网站如雨后春笋般出现,适应城市快节奏的生活[3]。同 时,计算机技术也日新月异变化,本文利用先进的计算机技术将房屋出租管理这一传统行业进行信息化改造,来提 高租房行业的效率,给人们带来便利,房东和租客都能在该平台上进行操作,实现自己的要求。同时,通过本次设 计可以整体对软件设计流程进行学习,培养自己动手实践能力。
1.2国内外研究现状
在如今的互联网时代,在信息技术的加持下,尤其欧美发达国家已经早早步入房屋出租市场的信息化管理。由 于欧美国家的一部分人对热衷于租房来进行居住,拥有庞大租房群体。以纽约、柏林、东京三个城市为例来介绍国 外的房屋出租市场现状。在纽约房屋租赁市场,面对不同的群体,通过市场化和政府共同主导,分为二种,一种是 市场化的房屋出租市场、一种是政府补贴和控价的租赁。德国柏林的市区有超过七成的房屋归私人所有,而政府参 与的房屋仅一成,因此政府通过大量的房屋补贴来照顾低收入人群,拥有大量的廉租房。相较于欧美市场,东京的 政府的房屋出租策略相当完善,针对不同收入和不同阶级的家庭制定不同的租金标准。面对发达国家巨大的租房市 场,国外一些公司通过计算机技术将房屋出租市场信息化取代原有的依赖人工的管理,提高房屋出租管理的效率, 也赢得了大量的用户。其中法国通过计算机技术和完善的房屋出租体系,建立大型的的房屋出租平台并将其推向市 场化,能够实现对出租信息进行市场化管理。
在国内,随着城市化进程的加快,大量的农村人口进入到城镇和大城市,带来了大量的务工人员。同时,城市 的房价也在突飞猛进,高房价与收入不成正比,大量的进城务工人员选择租房来进行居住[5]。与此同时,庞大的高 校毕业生群体也是租房的主力军,由于工作等原因,频繁的更换居住环境。据有关部门统计,截止到2020年底,流 动人口达3亿之多,带来了大量租房需求,为房屋租赁市场带来巨大商机[6]。在一线城市中如北京、上海、深圳等 拥有大量的就业岗位,同时也是房价最高的几个城市,提供较多的就业机会,吸引了大量的就业人群,面对如此巨 大的租房群体,单纯依靠以往的人工管理方式,难以满足需求,对房屋出租系统的改造迫在眉睫。目前,我国的租 赁市场还存在大量依赖人工纸张进项房屋出租业务办理,如在墙上贴广告、发传单等,一方面效率低下,同时也影 响社会文明[7]。随着全球化经济的进一步加剧,国外一些先进的房屋出租管理方式和理念,慢慢进入中国,占据 中国市场,因此国内的房屋出租信息化管理迫在眉睫。
1.3主要工作
本文通过对房屋出租所需的的SSM、JSP、网络结构等理论和技术出发,对系统任务、需求以及功能进行详细的 分析,对系统功能进行实现和测试9]。 本文将从以下几个方面进行分析:
1.对系统的项目研究背景和国内外研究进行分析,总结目前出现的房屋出租管理的优点和缺点,为本文的研究提供思路。
2.对房屋出租系统涉及的技术的发展进行相关分析,对SSM、JSP等技术进行详细的描述。
3.对房屋出租系统极性分析,概述任务,用UML来进行系统需求分析,同时对系统功能进行分析。
4.完成系统数据库和功能模块的设计,并对系统功能进行实现,包括系统注册、系统登录、普通用户功能等。
第2章 相关技术介绍
2.1系统的B/S结构
系统结构一般为两种,一种是基于B/S结构的,主要是实现浏览器端和服务器端的互联,通过客户端的浏览器进 行功能显示,用户需要登录浏览器,通过系统将数据传入到服务器进行数据处理再返回。该结构基于C/S模式,集合 其全部优点,降低了开发和维护成本,同时操作简单,便于推广[10]。其原理如图1所示,三层结构,通过浏览 器、服务器以及数据库三者的数据传递实现系统的运行。
图1 B/S模式体系结构原理图
B/S结构的最大优势在于对客户端的硬件和软件要求不高,不需要专门的进行培训或者设备,只需要用户使用能 上网的电脑即可,便于维护。同时利用三层结构,便于扩展,减少终端的负担, 实时性较强。
最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客 户端零维护。系统的扩展非常容易。B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能 在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。
2.2JSP技术概述
JSP技术是一种动态网页技术,通过程序段和标记进行动态数据的交换,可以在多个操作系统上运行,具有以下 优势:
(1)程序具有兼容性,从一个系统到另一个系统即可运行,无需修改。
(2)可以跨平台运行,支持Linux、Windows等系统,可以通开发平台进行移植,进行相关扩展。
(3)功能强大,拥有多种的功能开发和多样化工具,开源获取方便。
(三)SSM框架
SSM 框架是 Spring、SpringMVC 和 Mybatis 的简称,将两个开源框架 Spring和 Mybatis 相整合而成,而SpringMVC 是 Spring 中处理 Web 请求的模块。使用SSM 框架在软件开发过程中能与三层架构完美融合,其中 SpringMVC、Spring 和Mybatis 分别对应了表示层(View)、业务层(Service)和持久层(Dao),为系统的开发 和维护提供了便利。SSM 框架与三层架构的关系如图 2所示。下面将对这三个框架的基础特性分别进行说明。
图 2 SSM 框架和三层架构关系图
Spring 框架对实际开发中常采用的三层体系架构都提供了技术支持。在整个SSM 框架使用的过程中它像一个黏 合剂,将 SpringMVC 和 Mybatis 组合到一起,并对它们进行管理。Spring 框架包含控制反转功能和依赖注入功能,所以开发人员只需对接口进行编程即可,而面向切面编程则则提供了声明性事物管理。
SpringMVC 框架是 Spring 框架中对传统 MVC 模式改进后,如图3所示,其中模型负责处理业务,接受控器的调 遣;视图负责返回响应结果。
图3MVC结构流程
Mybatis 框架完全开源免费,不依赖任何第三方。在 SSM 框架中,Spring 框架经过简单的配置后,就能完美 集成 Mybatis框架。使用 Mybatis降低了程序之间的耦合,增强了系统的可管理性,降低了系统的维护难度。
第3章 系统分析
3.1系统目标
根据房屋出租系统的需求,基于web技术实现房屋出租的信息化管理,主要针对管理者、房东、租客三个用户, 提供了房屋出租信息的发布、查询等功能,提高系租房的效率,为用户带来便利。
系统目标如下: 1.应用网络的优势,开发房屋出租信息网站,方便房屋出租者与房屋求租者交流,可以使双方都能了解彼此需求之 后再进行交易,从而达到房屋信息被准确利用的目的。 2.网站用户能够在网站首页及时浏览房屋信息,并可以随时注册账号,登录网站发布个人房屋信息。3.网站有房屋出租公告模块,用户可以浏览、阅读本站公告和房屋信息。4.管理员控制网站中对所有用户的各项信息管理,可以随时查看用户的个人信息及房屋信息,监督并防止用户录入 非法信息。
3.2系统需求
系统的需求分析通过用例图来表明系统参与者的间的相互作用,从系统的根本出发来进行描述。包含:用例 图、角色、用例、等模块,其中角色包含本系统的管理员、用户(房东、租客),用例对系统的功能范围进行约 束, 用例图整体的表示系统之间的关联关系。如图4所示,展示了普通用户和管理员两种角色的用例图,其中普通用 户可以完成个人信息、房屋信息的管理,管理员则对用户、房源以及系统公告进行管理。
第4章系统设计
4.1系统功能设计
本文主要针对web技术的房屋出租系统进行功能设计,包括功能的前端设计包括用户模块,如图5所示;后台管理模 块主要是管理员的信息管理,如图6所示。
前端功能设计(普通用户) :
(1) 身份验证:注册和登录。
(2)个人信息修改。
(3)房屋信息管理:发布、修改、增加、删除房屋信息。
(4)浏览功能:查看房屋信息和公告信息。
后台功能设计(管理员):
(5)身份验证:注册和登录
(6)用户信息管理
(7)房屋信息管理:发布、修改、增加、删除房屋信息
(8)公告信息管理
4.2 数据库的设计与实现
1.数据库简介
SQL Server是目前中小型管理系统开发主流数据库技术之一,可以实现多个系统的运行,具有较好的交互性、可扩 展性、分布性等优势,其特点如下:
(1)具有图像化管理界面,便于开发,利用系统的优势进行扩展。
(2) 内在管理逻辑先进,支持本地系统开发。
(3) 能够快速进行数据的处理,保证数据安全性。
(4) 支持多线程处理,包括存储、自主定义SQL语言等 2.数据库结构设计
数据库设计是数据设计的核心,需要将系统的数据概念转换为数据逻辑模型,如定义一个chuzu数据库名称,该 数据库包含了用户信息、房屋信息、公告信息等。根据系统的要求,完成了用户信息表、房屋出租、求组信息表、 房屋合租信息表、公告信息表四个表,对字段名称、数据类型、长度、允许空等进行了定义。如表1 —表4所示。 表1用户信息表 (users)
字段名称 | 数据类型 | 长度 | 允许空 | 约束条件 | 备注 |
id | int | 5 | 否 | 主键 | ID |
userid | varchar | 20 | 否 | 角色ID | |
password | varchar | 20 | 否 | 密码 | |
username | varchar | 20 | 否 | 唯一索引 | 角色ID |
表2房屋出租、求租信息表 (house)
字段名称 | 数据类型 | 长度 | 允许空 | 约束条件 | 备注 |
id | bigint | 8 | 否 | 主键 | ID |
haddress | varchar | 100 | 否 | 房屋地址 | |
hfoor | varchar | 20 | 否 | 房屋楼层 | |
hroomNum | int | 4 | 否 | 房间号 | |
mianji | int | 4 | 否 | 面积 | |
price | varchar | 20 | 否 | 价格 | |
hrentstatus | varchar | 20 | 否 | 房屋状态 | |
person | varchar | 20 | 否 | 房主信息 | |
phone | varchar | 20 | 否 | 电话 | |
type | varchar | 100 | 否 | 备注 | |
hostid | varchar | 20 | 否 | 唯一索引 | 房屋ID |
表3房屋合租信息表 (house2)
字段名称 | 数据类型 | 长度 | 允值空 | 约束条件 | 备注 |
id | bigint | 8 | 否 | 主键 | ID |
biaoti | varchar | 100 | 否 | 标题 | |
fangwu | varchar | 20 | 否 | 房屋信息 | |
xianzhi | varchar | 20 | 否 | 限制 | |
mianji | int | 4 | 否 | 面积 | |
jiage | int | 4 | 否 | 价格 | |
dianhua | varchar | 20 | 否 | 电话 | |
person | varchar | 10 | 否 | 个人信息 | |
miaoshu | varchar | 100 | 否 | 描述 | |
hostid | varchar | 20 | 否 | 唯一索引 | 房屋ID |
shijian | varchar | 20 | 否 | 时间 |
表4公告信息表 (gonggao)
字段名称 | 数据类型 | 长度 | 允值空 | 约束条件 | 备注 |
id | bigint | 8 | 否 | 主键 | ID |
title | varchar | 4000 | 否 | 标题 | |
content | varchar | 8000 | 否 | 内容 | |
shijian | varchar | 22 | 否 | 时间 |
3.数据库加载和调试
数据库的运行影响着系统运行的效率,一方面包含数据的加载,数据传递数据库或者数据存取等,另一方面是 系统的程序的调试与安装。其中加载可以贯穿系统的程序调试的整个周期,包括录入、增删改查等工作都是加载的 一部分。在数据库中数据处理的量比较大,来自系统的各个部分,包括系统组织关系、逻辑结构以及其中的格式问 题都存在不同, 通过各数据层的录入,展现各类数据类型,输入计算机进行分类转换,最终经系统设计与数据库的 结构相结合,实现数据的输入。
传统的数据库信息输入转换耗时耗力,相当耗时。依赖人工技术数据的输入,通过一一制定相关的原始数据表、凭证等,在设计数据库系统时, 需要通过大量实物人工处理,此工作量巨大,由于不同的数据处理环境不同, 存在不同的数据转换器,一般数据库产品中不提供转换功能,同时为了提高转换的效率和质量,针对不同的应用环 境设计一个子录入系统,通过计算机进行录入数据的功能。
通过计算机进行数据的录入与传统录入方式存在一定的不同,有一定的差距, 在计算机中输入的数据容易出现 格式的错误,在转换的过程中容易出错。因此在录入前,需要对数据进行检验,防止数据出现错误,硬性系统数据 库的设计。此过程还应重视数据原有的内容特点,保证输入的格式、逻辑与传统的系统结构类似,不仅提高处理数 据的效率,也减少数据的出错的概率,保证数据录入的质量。数据程序调试与分析与数据库的设计是同步的,因此 在数据的录入过程中也应重视相关操作。
4.操作数据库
数据库在行数据访问前,需要对数据的对象建立方法激励不同的Statement对象,生成可以执行的SQL语句。首
先安装驱动,在数据库进行定义。部分代码如下:
Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);
String url=”jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=edu”;
String user=”1234″;
String password=”1234″;
Connection conn=DriverManager.getConnection(url, user, password);
Statement stmt=conn.createStatement();
Resultset rs = stmt.executeQuery(“select * from house”);
本站文章通过互联网转载或者由本站编辑人员搜集整理发布,如有侵权,请联系本站删除。