基于WEB的房屋出租管理系项
每天记录学习,每天会有好心情。*^_^*
今天和一个朋友共同完成了一个基于WEB的房屋出租管理系项目,我们在开发时选用的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都是为了方便他。和往常一样选用简单又便捷的MYECLIPSE作为开发工具,这是一个 后台项目。这个系统的介绍是这样的:近年来,随着大型社区的不断开发兴建,物业公司对于房屋的租售管理工作变得日趋复杂.伴随着这类业务的开展,如何对租售房屋进行高效、合理的管理这个问题越来越凸现出来.针对这一需求设计并实现了一套基于Web的房屋租售管理系统,力求能简洁高效地解决房屋出租管理方面的问题.通过详细分析房屋租售管理工作的各项需求,该系统利用MVC架构,采用JAVA+MYSQL编写了可以运行于Windows 7/XP/2000/NT等操作平台的满足大型物业公司管理房屋租售工作的信息系统,为推动企业从劳动型管理走向科学化、规范化管理提供了保障.,一个基于WEB的房屋出租管理系应包含用户角色有管理员。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
租房的存在是为了能更好的结合系统的功能。房屋、住户表的联系在这张表中得以体现,其关联关系为租房的房屋与房屋的mingcheng字段对应、租房的房屋id与房屋的id字段对应、租房的住户与住户的mingzi字段对应、租房的住户id与住户的id字段对应。
总结得出该系统所有数据为:管理员(admin)、房屋(fangwu)、住户(zhuhu)、租房(zufang)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
房屋表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 房屋id mingcheng | VARCHAR(255) | | 名称 jieshao | VARCHAR(255) | | 介绍 jiage | VARCHAR(255) | | 价格 tupian | VARCHAR(255) | | 图片 lianxifangshi | VARCHAR(255) | | 联系方式
住户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 住户id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
租房表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 租房id fangwu | VARCHAR(255) | | 房屋 fangwuid | VARCHAR(255) | | 房屋id zhuhu | VARCHAR(255) | | 住户 zhuhuid | VARCHAR(255) | | 住户id
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggfangwuchuzu -- ---------------------------- DROP TABLE IF EXISTS `t_admin`; CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员'; -- ---------------------------- DROP TABLE IF EXISTS `t_fangwu`; CREATE TABLE `t_fangwu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '房屋id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',`jieshao` VARCHAR(5000) DEFAULT NULL COMMENT '介绍',`jiage` VARCHAR(255) DEFAULT NULL COMMENT '价格',`tupian` VARCHAR(255) DEFAULT NULL COMMENT '图片',`lianxifangshi` VARCHAR(255) DEFAULT NULL COMMENT '联系方式',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='房屋'; -- ---------------------------- DROP TABLE IF EXISTS `t_zhuhu`; CREATE TABLE `t_zhuhu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '住户id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='住户'; -- ---------------------------- DROP TABLE IF EXISTS `t_zufang`; CREATE TABLE `t_zufang` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '租房id',`fangwu` VARCHAR(255) DEFAULT NULL COMMENT '房屋',`fangwuid` INT(11) DEFAULT NULL COMMENT '房屋id',`zhuhu` VARCHAR(255) DEFAULT NULL COMMENT '住户',`zhuhuid` INT(11) DEFAULT NULL COMMENT '住户id',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='租房';
添加房屋模块:
通过添加房屋模块,可以完成房屋的添加操作。在页面中跳转到添加房屋页面,输入房屋的所有信息,点击添加操作,可以将房屋数据以post提交到fangwuController中。房屋所包含的字段信息包括名称,介绍,价格,图片,联系方式。在fangwuController中通过定义fangwu接受所有的房屋参数。使用fangwudao的insert方法将fangwu实体插入到数据库中。完成数据的添加操作,在fangwuMapper中匹配对应的fangwuxml完成插入sql语句的执行操作。该部分核心代码如下:
通过fangwudao的insert方法将页面传输的房屋添加到数据库中 fangwudao.insert(fangwu);
将添加房屋成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加房屋成功");
返回房屋管理界面
return "forward:/tianjiafangwu.action";
查询房屋模块:
房屋的查询模块实现方式为,在页面中发起fangwuguanli.action请求。通过该请求,响应服务器fangwuController类中的fangwuguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的房屋信息查询后,保存到request中的fangwuall中,在页面中进行展示,返回fangwuguanli.jsp,该部分核心代码如下所示:
生成房屋样例类,通过example定义查询条件 FangwuExample example = new FangwuExample();
通过fangwudao的selectByExample方法查询出所有的房屋信息 List fangwuall = fangwudao.selectByExample(example);
将房屋信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("fangwuall", fangwuall);
返回房屋管理界面
return "forward:/fangwuguanli.action";
修改房屋模块:
在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaifangwu中,封装为一个房屋
,使用update方法修改该房屋信息,将数据同步到数据库,完成修改操作。
定义修改成功提示信息,修改房屋成功,并保存到request中具体代码如下:
通过fangwudao的修改方法根据id修改对应的房屋 fangwudao.updateByPrimaryKeySelective(fangwu);
将修改房屋成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改房屋信息成功");
返回房屋管理界面
return "forward:/fangwuguanli.action";
删除房屋模块:
删除房屋功能实现在fangwuController中,实现方法为shanchufangwu。在页面中通过get方法shanchufangwu.action?Id的形式将需要删除的房屋id上传到服务器中,响应对应的方法,调用fangwudao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:
通过fangwudao的删除方法根据id删除对应的房屋 fangwudao.deleteByPrimaryKey(id);
将删除房屋成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除房屋成功");
返回房屋管理界面
return "forward:/fangwuguanli.action";