1 、功能描述

  基于springboot的物业管理系统3拥有两种角色

  管理员:车位费用管理、物业收费管理、投诉处理管理、报修管理、楼栋管理、房屋管理、用户管理、业主管理、车位管理、抄表管理、报修统计图

  用户:车位费查询缴费、物业费查询缴费、添加投诉、添加报修信息

2、项目技术

后端框架:springboot、Mybatis

前端技术:Layui、html、css、JavaScript、JQuery

2.1 ### 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 登录

springboot vue rtsp 播放 springboot 视频_spring boot

4.2 管理员模块

springboot vue rtsp 播放 springboot 视频_sql_02

springboot vue rtsp 播放 springboot 视频_sql_03

springboot vue rtsp 播放 springboot 视频_MySQL_04

springboot vue rtsp 播放 springboot 视频_MySQL_05

springboot vue rtsp 播放 springboot 视频_MySQL_06

springboot vue rtsp 播放 springboot 视频_spring boot_07

springboot vue rtsp 播放 springboot 视频_spring_08

springboot vue rtsp 播放 springboot 视频_MySQL_09

springboot vue rtsp 播放 springboot 视频_spring_10

springboot vue rtsp 播放 springboot 视频_后端_11

springboot vue rtsp 播放 springboot 视频_后端_12

4.3 用户模块

springboot vue rtsp 播放 springboot 视频_spring_13

springboot vue rtsp 播放 springboot 视频_MySQL_14

springboot vue rtsp 播放 springboot 视频_spring_15

springboot vue rtsp 播放 springboot 视频_spring_16

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 登录+注册+其它代码

/*
     * @Description 更新密码信息
     * @Param  用户实体类
     * @return 更新用户密码或者失败的信息
     */
    @ApiOperation(value = "修改密码")
    @RequestMapping("/update")
    public R update(String oldPwd, String newPwd, Integer id, HttpServletRequest request){
        //用户页面修改密码
        if(id==null){
            Userinfo user= (Userinfo) request.getSession().getAttribute("user");
            String username = user.getUsername();
            Userinfo user1 = userinfoService.findByUserName(username);
            if(oldPwd.equals(user1.getPassword())){//输入的老密码和原密码一致
                user.setPassword(newPwd);
                userinfoService.updateData(user);
                return R.ok();
            }else{
                return R.fail("两次密码不一致");
            }
        }
        //管理员页面修改密码,根据id获取当前的数据记录
        else{
            Userinfo user=userinfoService.findById(new Long(id));
            if(oldPwd.equals(user.getPassword())){//输入的老密码和原密码一致
                user.setPassword(newPwd);
                userinfoService.updateData(user);
                return R.ok();
            }else{
                return R.fail("两次密码不一致");
            }
            }
    }