java基于ssm的房屋租赁管理系统、房屋出租管理系统、租房管理系统,附源码+数据库,免费安装部署运行,包运行

本文主要是介绍java基于ssm的房屋租赁管理系统、房屋出租管理系统、租房管理系统,附源码+数据库,免费安装部署运行,包运行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、项目介绍

java基于ssm的房屋租赁管理系统、房屋出租管理系统、租房管理系统,​ 系统分为前台用户界面和后台系统管理。

1.1 前台用户界面

  用户注册、用户登录、用户中心、浏览房源、房源搜索

  查看房源明细、发布房源、提交合同、新闻公告、留言交流

1.2 后台系统管理

  用户管理:用户列表、用户删除、用户查询

  新闻管理:新闻列表、添加新闻、修改新闻、删除新闻、查询新闻

  房屋管理:房屋列表、房屋删除、分页查看

  留言管理:留言列表、留言删除、留言查询、留言回复列表、回复查询

  租赁合同管理:合同列表、查看合同、删除合同

  管理员管理:管理员管理、新增管理员、编辑管理员、删除管理员等

2、技术框架

编程语言:Java

系统架构:B/S

前端框架:JSP、jQuery

后端框架:SSM(Spring、SpringMVC、MyBatis)

数据库:MySQL

Maven项目:否

运行环境:JDK8+MySQL5.6+Idea+Tomcat8.5

3、演示视频

java基于ssm的房屋租赁管理系统、房屋出租管理系统、租房管理系统,附源码+数据库,适合毕业设计、课程设计、大实验、实训

B站视频地址java基于ssm的房屋租赁管理系统、房屋出租管理系统、租房管理系统,附源码+数据库,适合毕业设计、课程设计、大实验、实训_哔哩哔哩_bilibili

4、项目截图

4.1、前台首页

4.2、用户注册

4.3、用户登录

4.4、新闻公告

4.5、房源分类

4.6、留言交流

4.7、用户中心

4.8、用户信息管理

4.9、修改密码

4.10、发布房源

4.11、我的房源

4.12、提交合同

4.13、我的合同

4.14、后台登录

4.15、后台-管理员管理

4.16、后台-用户管理

4.17、后台-新闻公告管理

4.18、后台-访问类型管理

4.19、后台-访问管理

4.20、后台-租赁合同管理

4.21、后台-留言交流管理

4.22、留言回复管理

6、代码示例

package com.action;import java.util.ArrayList;
import java.util.List;import javax.annotation.Resource;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;import com.entity.Article;
import com.entity.Bbs;
import com.entity.Cate;
import com.entity.Contract;
import com.entity.House;
import com.entity.Rebbs;
import com.entity.Users;
import com.service.ArticleService;
import com.service.BbsService;
import com.service.CateService;
import com.service.ContractService;
import com.service.HouseService;
import com.service.RebbsService;
import com.service.UsersService;
import com.util.VeDate;//定义为控制器
@Controller
// 设置路径
@RequestMapping("/index")
public class IndexAction extends BaseAction {@Autowired@Resourceprivate UsersService usersService;@Autowired@Resourceprivate ArticleService articleService;@Autowired@Resourceprivate CateService cateService;@Autowired@Resourceprivate HouseService houseService;@Autowired@Resourceprivate ContractService contractService;@Autowired@Resourceprivate BbsService bbsService;@Autowired@Resourceprivate RebbsService rebbsService;// 公共方法 提供公共查询数据private void front() {this.getRequest().setAttribute("cateList", this.cateService.getAllCate());this.getRequest().setAttribute("hotList", this.houseService.getHotHouse());this.getRequest().setAttribute("title", "房屋租赁系统");}// 首页显示@RequestMapping("index.action")public String index() {this.front();List<Article> articleList = this.articleService.getFrontArticle();this.getRequest().setAttribute("articleList", articleList);List<Cate> frontList = new ArrayList<Cate>();List<Cate> cateList = this.cateService.getFrontCate();for (Cate cate : cateList) {List<House> houseList = this.houseService.getFrontHouse(cate.getCateid());cate.setHouseList(houseList);frontList.add(cate);}this.getRequest().setAttribute("frontList", frontList);this.getRequest().setAttribute("newsList", this.houseService.getNewsHouse());return "users/index";}// 分类查询@RequestMapping("cate.action")public String cate(String id) {this.front();House house = new House();house.setStatus("待租");house.setCateid(id);List<House> houseList = this.houseService.getHouseByCond(house);this.getRequest().setAttribute("houseList", houseList);return "users/list";}// 模糊查询@RequestMapping("query.action")public String query() {this.front();String name = this.getRequest().getParameter("name");House house = new House();house.setStatus("待租");house.setHousename(name);List<House> houseList = this.houseService.getHouseByLike(house);this.getRequest().setAttribute("houseList", houseList);return "users/list";}// 全部查询@RequestMapping("all.action")public String all() {this.front();House house = new House();house.setStatus("待租");List<House> houseList = this.houseService.getHouseByCond(house);this.getRequest().setAttribute("houseList", houseList);return "users/list";}// 全部查询@RequestMapping("detail.action")public String detail(String id) {this.front();House house = this.houseService.getHouseById(id);house.setHits("" + (Integer.parseInt(house.getHits()) + 1));this.houseService.updateHouse(house);this.getRequest().setAttribute("house", house);return "users/detail";}// 公告@RequestMapping("article.action")public String article(String number) {this.front();List<Article> articleList = new ArrayList<Article>();List<Article> tempList = this.articleService.getAllArticle();int pageNumber = tempList.size();int maxPage = pageNumber;if (maxPage % 10 == 0) {maxPage = maxPage / 10;} else {maxPage = maxPage / 10 + 1;}if (number == null) {number = "0";}int start = Integer.parseInt(number) * 10;int over = (Integer.parseInt(number) + 1) * 10;int count = pageNumber - over;if (count <= 0) {over = pageNumber;}for (int i = start; i < over; i++) {Article x = tempList.get(i);articleList.add(x);}String html = "";StringBuffer buffer = new StringBuffer();buffer.append("&nbsp;&nbsp;共为");buffer.append(maxPage);buffer.append("页&nbsp; 共有");buffer.append(pageNumber);buffer.append("条&nbsp; 当前为第");buffer.append((Integer.parseInt(number) + 1));buffer.append("页 &nbsp;");if ((Integer.parseInt(number) + 1) == 1) {buffer.append("首页");} else {buffer.append("<a href=\"index/article.action?number=0\">首页</a>");}buffer.append("&nbsp;&nbsp;");if ((Integer.parseInt(number) + 1) == 1) {buffer.append("上一页");} else {buffer.append("<a href=\"index/article.action?number=" + (Integer.parseInt(number) - 1) + "\">上一页</a>");}buffer.append("&nbsp;&nbsp;");if (maxPage <= (Integer.parseInt(number) + 1)) {buffer.append("下一页");} else {buffer.append("<a href=\"index/article.action?number=" + (Integer.parseInt(number) + 1) + "\">下一页</a>");}buffer.append("&nbsp;&nbsp;");if (maxPage <= (Integer.parseInt(number) + 1)) {buffer.append("尾页");} else {buffer.append("<a href=\"index/article.action?number=" + (maxPage - 1) + "\">尾页</a>");}html = buffer.toString();this.getRequest().setAttribute("html", html);this.getRequest().setAttribute("articleList", articleList);return "users/article";}// 阅读公告@RequestMapping("read.action")public String read(String id) {this.front();Article article = this.articleService.getArticleById(id);article.setHits("" + (Integer.parseInt(article.getHits()) + 1));this.articleService.updateArticle(article);this.getRequest().setAttribute("article", article);return "users/read";}// 准备登录@RequestMapping("preLogin.action")public String prelogin() {this.front();return "users/login";}// 用户登录@RequestMapping("login.action")public String login() {this.front();String username = this.getRequest().getParameter("username");String password = this.getRequest().getParameter("password");Users u = new Users();u.setUsername(username);List<Users> usersList = this.usersService.getUsersByCond(u);if (usersList.size() == 0) {this.getSession().setAttribute("message", "用户名不存在");return "redirect:/index/preLogin.action";} else {Users users = usersList.get(0);if (password.equals(users.getPassword())) {this.getSession().setAttribute("userid", users.getUsersid());this.getSession().setAttribute("username", users.getUsername());this.getSession().setAttribute("users", users);return "redirect:/index/index.action";} else {this.getSession().setAttribute("message", "密码错误");return "redirect:/index/preLogin.action";}}}// 准备注册@RequestMapping("preReg.action")public String preReg() {this.front();return "users/register";}// 用户注册@RequestMapping("register.action")public String register(Users users) {this.front();Users u = new Users();u.setUsername(users.getUsername());List<Users> usersList = this.usersService.getUsersByCond(u);if (usersList.size() == 0) {users.setRegdate(VeDate.getStringDateShort());this.usersService.insertUsers(users);} else {this.getSession().setAttribute("message", "用户名已存在");return "redirect:/index/preReg.action";}return "redirect:/index/preLogin.action";}// 退出登录@RequestMapping("exit.action")public String exit() {this.front();this.getSession().removeAttribute("userid");this.getSession().removeAttribute("username");this.getSession().removeAttribute("users");return "index";}// 准备修改密码@RequestMapping("prePwd.action")public String prePwd() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}return "users/editpwd";}// 修改密码@RequestMapping("editpwd.action")public String editpwd() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");String password = this.getRequest().getParameter("password");String repassword = this.getRequest().getParameter("repassword");Users users = this.usersService.getUsersById(userid);if (password.equals(users.getPassword())) {users.setPassword(repassword);this.usersService.updateUsers(users);} else {this.getSession().setAttribute("message", "旧密码错误");return "redirect:/index/prePwd.action";}return "redirect:/index/prePwd.action";}@RequestMapping("usercenter.action")public String usercenter() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}return "users/usercenter";}@RequestMapping("userinfo.action")public String userinfo() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");this.getSession().setAttribute("users", this.usersService.getUsersById(userid));return "users/userinfo";}@RequestMapping("personal.action")public String personal(Users users) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}this.usersService.updateUsers(users);return "redirect:/index/userinfo.action";}// 留言板@RequestMapping("bbs.action")public String bbs() {this.front();List<Bbs> bbsList = this.bbsService.getAllBbs();this.getRequest().setAttribute("bbsList", bbsList);return "users/bbs";}// 发布留言@RequestMapping("addbbs.action")public String addbbs() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");Bbs bbs = new Bbs();bbs.setAddtime(VeDate.getStringDate());bbs.setContents(getRequest().getParameter("contents"));bbs.setHits("0");bbs.setRepnum("0");bbs.setTitle(getRequest().getParameter("title"));bbs.setUsersid(userid);this.bbsService.insertBbs(bbs);return "redirect:/index/bbs.action";}// 查看留言@RequestMapping("readbbs.action")public String readbbs() {this.front();Bbs bbs = this.bbsService.getBbsById(getRequest().getParameter("id"));bbs.setHits("" + (Integer.parseInt(bbs.getHits()) + 1));this.bbsService.updateBbs(bbs);this.getRequest().setAttribute("bbs", bbs);Rebbs rebbs = new Rebbs();rebbs.setBbsid(bbs.getBbsid());List<Rebbs> rebbsList = this.rebbsService.getRebbsByCond(rebbs);this.getRequest().setAttribute("rebbsList", rebbsList);return "users/readbbs";}// 回复留言@RequestMapping("rebbs.action")public String rebbs() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");Rebbs rebbs = new Rebbs();rebbs.setAddtime(VeDate.getStringDate());rebbs.setContents(getRequest().getParameter("contents"));rebbs.setBbsid(getRequest().getParameter("bbsid"));rebbs.setUsersid(userid);this.rebbsService.insertRebbs(rebbs);Bbs bbs = this.bbsService.getBbsById(rebbs.getBbsid());bbs.setRepnum("" + (Integer.parseInt(bbs.getRepnum()) + 1));this.bbsService.updateBbs(bbs);String path = "redirect:/index/readbbs.action?id=" + bbs.getBbsid();return path;}@RequestMapping("preHouse.action")public String preHouse() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}return "users/addHouse";}@RequestMapping("addHouse.action")public String addHouse(House house) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");house.setAddtime(VeDate.getStringDateShort());house.setHits("0");house.setUsersid(userid);house.setStatus("待租");this.houseService.insertHouse(house);return "redirect:/index/preHouse.action";}@RequestMapping("myHouse.action")public String myHouse() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");House house = new House();house.setUsersid(userid);List<House> houseList = this.houseService.getHouseByCond(house);this.getRequest().setAttribute("houseList", houseList);return "users/myHouse";}@RequestMapping("deleteHouse.action")public String deleteHouse(String id) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}this.houseService.deleteHouse(id);return "redirect:/index/myHouse.action";}@RequestMapping("getHouseById.action")public String getHouseById(String id) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}House house = this.houseService.getHouseById(id);this.getRequest().setAttribute("house", house);return "users/editHouse";}@RequestMapping("updateHouse.action")public String updateHouse(House house) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}this.houseService.updateHouse(house);return "redirect:/index/myHouse.action";}@RequestMapping("preContract.action")public String preContract() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}this.getRequest().setAttribute("cno", "C" + VeDate.getStringId());String userid = (String) this.getSession().getAttribute("userid");House house = new House();house.setUsersid(userid);house.setStatus("待租");List<House> houseList = this.houseService.getHouseByCond(house);this.getRequest().setAttribute("houseList", houseList);return "users/addContract";}@RequestMapping("addContract.action")public String addContract(Contract contract) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");contract.setAddtime(VeDate.getStringDateShort());contract.setStatus("未完成");contract.setUsersid(userid);this.contractService.insertContract(contract);House house = this.houseService.getHouseById(contract.getHouseid());house.setStatus("出租");this.houseService.updateHouse(house);return "redirect:/index/preContract.action";}@RequestMapping("myContract.action")public String myContract() {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}String userid = (String) this.getSession().getAttribute("userid");Contract contract = new Contract();contract.setUsersid(userid);List<Contract> contractList = this.contractService.getContractByCond(contract);this.getRequest().setAttribute("contractList", contractList);return "users/myContract";}@RequestMapping("over.action")public String over(String id) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}Contract contract = this.contractService.getContractById(id);contract.setStatus("完成");this.contractService.updateContract(contract);House house = this.houseService.getHouseById(contract.getHouseid());house.setStatus("待租");this.houseService.updateHouse(house);return "redirect:/index/myContract.action";}@RequestMapping("deleteContract.action")public String deleteContract(String id) {this.front();if (this.getSession().getAttribute("userid") == null) {return "redirect:/index/preLogin.action";}Contract contract = this.contractService.getContractById(id);House house = this.houseService.getHouseById(contract.getHouseid());house.setStatus("待租");this.houseService.updateHouse(house);this.contractService.deleteContract(id);return "redirect:/index/myContract.action";}}

这篇关于java基于ssm的房屋租赁管理系统、房屋出租管理系统、租房管理系统,附源码+数据库,免费安装部署运行,包运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/418439

相关文章

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null

一文彻底搞懂Java 中的 SPI 是什么

《一文彻底搞懂Java中的SPI是什么》:本文主要介绍Java中的SPI是什么,本篇文章将通过经典题目、实战解析和面试官视角,帮助你从容应对“SPI”相关问题,赢得技术面试的加分项,需要的朋... 目录一、面试主题概述二、高频面试题汇总三、重点题目详解✅ 面试题1:Java 的 SPI 是什么?如何实现一个

Spring中管理bean对象的方式(专业级说明)

《Spring中管理bean对象的方式(专业级说明)》在Spring框架中,Bean的管理是核心功能,主要通过IoC(控制反转)容器实现,下面给大家介绍Spring中管理bean对象的方式,感兴趣的朋... 目录1.Bean的声明与注册1.1 基于XML配置1.2 基于注解(主流方式)1.3 基于Java

Pytorch介绍与安装过程

《Pytorch介绍与安装过程》PyTorch因其直观的设计、卓越的灵活性以及强大的动态计算图功能,迅速在学术界和工业界获得了广泛认可,成为当前深度学习研究和开发的主流工具之一,本文给大家介绍Pyto... 目录1、Pytorch介绍1.1、核心理念1.2、核心组件与功能1.3、适用场景与优势总结1.4、优

conda安装GPU版pytorch默认却是cpu版本

《conda安装GPU版pytorch默认却是cpu版本》本文主要介绍了遇到Conda安装PyTorchGPU版本却默认安装CPU的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录一、问题描述二、网上解决方案罗列【此节为反面方案罗列!!!】三、发现的根本原因[独家]3.1 p

SpringCloud中的@FeignClient注解使用详解

《SpringCloud中的@FeignClient注解使用详解》在SpringCloud中使用Feign进行服务间的调用时,通常会使用@FeignClient注解来标记Feign客户端接口,这篇文章... 在Spring Cloud中使用Feign进行服务间的调用时,通常会使用@FeignClient注解

Java Spring 中的监听器Listener详解与实战教程

《JavaSpring中的监听器Listener详解与实战教程》Spring提供了多种监听器机制,可以用于监听应用生命周期、会话生命周期和请求处理过程中的事件,:本文主要介绍JavaSprin... 目录一、监听器的作用1.1 应用生命周期管理1.2 会话管理1.3 请求处理监控二、创建监听器2.1 Ser

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

Redis指南及6.2.x版本安装过程

《Redis指南及6.2.x版本安装过程》Redis是完全开源免费的,遵守BSD协议,是一个高性能(NOSQL)的key-value数据库,Redis是一个开源的使用ANSIC语言编写、支持网络、... 目录概述Redis特点Redis应用场景缓存缓存分布式会话分布式锁社交网络最新列表Redis各版本介绍旧