👉文末查看项目功能视频演示+获取源码+sql脚本+视频导入教程视频
1 、功能描述
基于springboot的物业管理系统3拥有两种角色
管理员:车位费用管理、物业收费管理、投诉处理管理、报修管理、楼栋管理、房屋管理、用户管理、业主管理、车位管理、抄表管理、报修统计图
用户:车位费查询缴费、物业费查询缴费、添加投诉、添加报修信息
1.1 背景描述
物业管理系统是一种基于科技的工具,用于帮助物业管理公司、物业管理员和业主更有效地管理和维护房产。该系统的出现得益于城市化进程的加速和对物业管理效率和服务质量需求的不断提高。
随着城市规模的扩大和住宅社区的增多,传统的物业管理方式已经无法满足日益增长的需求。物业管理系统的出现为管理公司和物业管理员提供了一个集中管理各种信息和资源的平台。通过该系统,管理者可以轻松处理租金管理、维修请求、安全巡检、员工调度以及沟通业主等方面的工作。
对于业主而言,物业管理系统为他们提供了便捷的途径来查看小区公告、提交报修请求、预约设施使用以及支付物业费用。此外,该系统还可以整合智能设备和安全监控系统,提高住宅社区的安全性和便利性。
另外,物业管理系统还为管理公司提供了更好的数据分析和业务决策依据。通过系统提供的信息和报告,管理者可以更好地了解业主需求、改进管理流程,并制定更加科学的管理策略。
总的来说,物业管理系统的出现有助于提升物业管理的效率和服务水平,为业主提供更优质的居住体验,同时也促进了物业管理行业的数字化转型和智能化发展。
2、项目技术
后端框架:springboot、Mybatis
前端技术:Layui、html、css、JavaScript、JQuery
2.1 springboot
Spring Boot是由Pivotal团队提供的基于Spring的框架,该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。Spring Boot集成了绝大部分目前流行的开发框架,就像Maven集成了所有的JAR包一样,Spring Boot集成了几乎所有的框架,使得开发者能快速搭建Spring项目。
2.2 mysql
MySQL是一款Relational Database Management System,直译过来的意思就是关系型数据库管理系统,MySQL有着它独特的特点,这些特点使他成为目前最流行的RDBMS之一,MySQL想比与其他数据库如ORACLE、DB2等,它属于一款体积小、速度快的数据库,重点是它符合本次毕业设计的真实租赁环境,拥有成本低,开发源码这些特点,这也是选择它的主要原因。
3、开发环境
- JAVA版本:JDK1.8(最佳)
- IDE类型:IDEA、Eclipse都可运行
- tomcat版本:无需
- 数据库类型:MySql(5.7、8.x版本都可)
- maven版本:无限制
- 硬件环境:Windows
4、功能截图+视频演示+文档目录
4.1 登录
4.2 管理员模块
4.3 用户模块
5 、核心代码实现
5.1 配置代码
server:
port: 8888
servlet:
context-path: /
spring:
resources:
static-locations: classpath:/static/,classpath:/templates/
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://localhost:3306/community?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true
username: root
password: root
devtools: # 热部署
livereload:
enabled: true
jackson: # 时间格式转化
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
# mybatis-plus
mybatis-plus:
type-aliases-package: com.yx.model
mapper-locations: classpath:com/yx/dao/*.xml
configuration:
map-underscore-to-camel-case: true
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
5.2 其它核心代码
package com.yx.controller;
import com.yx.model.Userinfo;
import com.yx.service.IUserinfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
/*
* @Author 刘东祥
* @Date 2022/9/21
* @Description 登陆管理
* @Since version-1.0
*/
@Controller
public class LoginController {
@Autowired
private IUserinfoService userinfoService;
@RequestMapping("/loginIn")
@ResponseBody
public Map loginIn(Userinfo userinfo, HttpServletRequest request){
Map map=new HashMap();
HttpSession session=request.getSession();
if(session==null){
map.put("code",404);
map.put("msg","登录超时了");
return map;
}
Userinfo user=userinfoService.queryUserByNameAndPwd(userinfo);
if(user==null){
map.put("code",404);
map.put("msg","用户名或者密码错误");
return map;
}else{
session.setAttribute("user",user);
map.put("code",200);
map.put("user",user);
map.put("username",user.getUsername());
return map;
}
}
/**
* 退出功能
*/
@RequestMapping("/loginOut")
public void loginOut(HttpServletRequest request, HttpServletResponse response) throws IOException {
HttpSession session=request.getSession();
session.invalidate();
response.sendRedirect(request.getContextPath()+"/login.html");
}
}