IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 基于Springboot社区人口管理系统的分析与实现 -> 正文阅读

[Java知识库]基于Springboot社区人口管理系统的分析与实现

作者主页:编程指南针

作者简介:Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师

主要内容:Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助

文末获取源码?

一,项目简介

社区疫情防控管理系统的开发主要为满足基层社区人员对社区居民疫情防控的需要,经过社区走访与调查研究,深入一线了解防控工作的流程和需求,得出本系统的基本需求要求。

系统的用户使用主要分为两类,一类是居委会管理人员,一类是居民用户,居委会管理人员主要进行相关信息的管理操作,居民主要进行相关信息的查看,以了解本社区目前最新的疫情防控状态。

管理员用户主要功能分析:

  1. 进行基本的信息管理功能:居民信息管理、地址信息管理、用户管理等
  2. 进行小区进出的信息管理:访客来访管理、居民出入管理、高危住户管理等
  3. 相关信息查看:出入记录、居民基本信息、相关统计信息等

?? 居民用户的主要功能分析:

  1. 查看居民居住信息、查看高住户信息、查看居民统计信息等
  2. 查看访客记录信息、个人出入信息登记等

二,技术及环境介绍

语言环境:Java: jdk1.8

数据库:Mysql: mysql5.7

应用服务器:Tomcat: tomcat8.5.31

开发工具:IDEA或eclipse

后台技术:Spring boot+ SpringMVC + MyBatisPlus,连接池采用 Druid,安全框架使用 Shiro,缓存使用ehcache

前台技术:Bootstrap + layer 实现

使用:

1,IDEA或ECLIPSE导入项目:配置MAVEN环境

2,MYSQL数据库创建名为communitydb数据库

3,yml文件中修改数据库的账户密码为自己的

4,启动程序的启动类(springboot程序直接启动启动类运行即可)

三,系统展示

整个软件系统的开发从最初的需求分析,概要设计到详细设计,都是为系统的最终实现来做准备工作的,可以说系统实现部分是我们目前最终的一个成果。系统实现部分主要是介绍一下疫情社区管理系统的部分核心功能模块的实现,包含前端UI界面的实现以及各模块的核心代码实现,并对各个核心模块做一下具体的业务功能介绍,让我们对整个系统主要完成的核心功能实现有一个基本的了解。

登陆

注册

住户管理

出入管理

访客模块

地址管理

系统管理

用户管理

注册码管理

以上是展示的疫情期间社区对人口流动的管理系统的部分基本功能,项目功能完整,页面简洁

四,核心代码展示

package com.wjxy.communityapp.controller;

import io.swagger.annotations.Api;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * @author Fluency
 * @creat 2021-01
 * 控制所有的请求跳转信息,进行页面渲染
 */

@Controller
@RequestMapping("/User")
@Api(value = "页面跳转", tags = "页面跳转相关接口")
public class IndexController {
    @RequestMapping("/login")
    public String loginPage() {
        return "page/sys/login";
    }

    @RequestMapping("/welcome")
    public String welcomePage() {
        return "page/sys/welcome";
    }

    @RequestMapping("/lookForPwd")
    public String lookForPwdPage() {
        return "page/sys/lookForPwd";
    }

    @RequestMapping("/register")
    public String registerPage() {
        return "page/sys/register";
    }

    @RequestMapping("/userInfo")
    public String setUserPage() {
        return "page/user/user-setting";
    }

    @RequestMapping("/updatePwd")
    public String updatePwdPage() {
        return "page/user/user-password";
    }


    @RequestMapping("/resident")
    public String residentPage() {
        return "page/residents/resident";
    }

    @RequestMapping("/addResident")
    public String addResidentPage() {
        return "page/residents/addResident";
    }


    @RequestMapping("/perilPage")
    public String perilPage() {
        return "page/residents/peril";
    }

    @RequestMapping("/resCount")
    public String resCountPage() {
        return "page/residents/resCount";
    }


    @RequestMapping("/records")
    public String recordsPage() {
        return "page/record/records";
    }

    @RequestMapping("/resRecord")
    public String recordPage() {
        return "page/record/resRecord";
    }


    @RequestMapping("/visRecord")
    public String visRecordPage() {
        return "page/record/visRecord";
    }


    @RequestMapping("/vistors")
    public String vistorsPage() {
        return "page/vistor/vistors";
    }

    @RequestMapping("/vistor")
    public String vistorPage() {
        return "page/vistor/vistor";
    }

    @RequestMapping("/address")
    public String addressPage() {
        return "page/address/address";
    }

    @RequestMapping("/addAddress")
    public String addAddressPage() {
        return "page/address/addAddress";
    }


    @RequestMapping("/users")
    public String userPage() {
        return "page/user/users";
    }

    @RequestMapping("/addUser")
    public String addUserPage() {
        return "page/user/addUser";
    }

    @RequestMapping("/aboutMe")
    public String aboutMePage() {
        return "page/sys/aboutMe";
    }

    @RequestMapping("/feedBack")
    public String feedbackPage() {
        return "page/info/feedBack";
    }

    @RequestMapping("/userSalt")
    public String userSaltPage() {
        return "page/salt/userSalt";
    }


    @RequestMapping("/404")
    public String exceptionPage() {
        return "page/sys/404";
    }


}
package com.wjxy.communityapp.controller;

import com.wjxy.communityapp.service.AddressService;
import com.wjxy.communityapp.service.RecordService;
import com.wjxy.communityapp.service.ResidentService;
import com.wjxy.communityapp.service.VisitorService;
import com.wjxy.communityapp.utils.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.text.SimpleDateFormat;
import java.util.*;

/**
 * @author Fluency
 * @creat 2021-01
 */
@RestController
@RequestMapping("/main")
public class MainController {
    @Autowired
    private ResidentService residentService;
    @Autowired
    private RecordService recordService;
    @Autowired
    private VisitorService visitorService;
    @Autowired
    private AddressService addressService;

    /**
     * 首页 数据展示
     *
     * 获取住户总数,地址总数,获取今日进出记录数,获取今日访客数
     */
    @PostMapping("datas")
    public Result showDatas(){
        //住户相关
        Result result = residentService.queryResCountl();
        Object data = result.getData();
        //地址相关
        long addTotal = addressService.queryAddressByParam().getTotal();
        //访客相关
        long visTotal = visitorService.queryVistorByParam().getTotal();
        //记录相关
        long recTotal = recordService.queryRecordByParam().getTotal();
        HashMap<String, Object> map = new HashMap<>(10);
        map.put("resCount",data);
        map.put("addCount",addTotal);
        map.put("visCount",visTotal);
        map.put("recCount",recTotal);

        return Result.ok(map);
    }

    /**
     * 首页  统计表
     * 记录的七天变化情况
     */
    @PostMapping("/echarts")
    public Result echarts(){
        /**
         * 获取当前时间,以及前七天的日期
         */
        String beginTime = null;
        String endTime = null;
        int size = 0;
        Date date = new Date();
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        HashMap<String, HashMap<String,Object>> map = new HashMap<>();
        HashMap<String, Object> dataMap = new HashMap<>();
        HashMap<String, Object> dateMap = new HashMap<>();
        ArrayList<Integer> list = new ArrayList<>();
        ArrayList<String> dateList = new ArrayList<>();
        calendar.add(Calendar.DATE,-6);
        beginTime = dateFormat.format(calendar.getTime());
        calendar.add(Calendar.DATE,1);
        endTime= dateFormat.format(calendar.getTime());
        size = recordService.queryRecCountByDate(beginTime, endTime).size();
        dateList.add(beginTime);
        list.add(size);
        for (int i = 0; i < 6; i++) {
            calendar.add(Calendar.DATE,0);
            beginTime = dateFormat.format(calendar.getTime());
            calendar.add(Calendar.DATE,1);
            endTime= dateFormat.format(calendar.getTime());
            size = recordService.queryRecCountByDate(beginTime, endTime).size();
            dateList.add(beginTime);
            list.add(size);
        }
        dateMap.put("data",dateList);
        dateMap.put("type","category");
        dateMap.put("boundaryGap",false);
        dataMap.put("name","进出记录");
        dataMap.put("type","line");
        dataMap.put("data",list);
        map.put("date",dateMap);
        map.put("data",dataMap);

        return  Result.ok(map);
    }
}

package com.wjxy.communityapp.controller;


import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.wjxy.communityapp.dto.UserDto;
import com.wjxy.communityapp.service.UserService;
import com.wjxy.communityapp.utils.JsonObject;
import com.wjxy.communityapp.utils.Result;
import io.swagger.annotations.Api;
import org.apache.shiro.authz.annotation.Logical;
import org.apache.shiro.authz.annotation.RequiresRoles;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * <p>
 * 前端控制器
 * </p>
 *
 * @author Fluency
 * @since 2021-01-05
 */

@Api(tags = "用户接口")
@RestController
@RequestMapping("/Users")
@RequiresRoles(value = "admin", logical = Logical.OR)
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/queryUserByParam")
    public JsonObject queryUserByParam(@RequestParam("page") Integer currentPage, @RequestParam("limit") Integer limit,
                                       @RequestParam(name = "params", required = false) String queryParams) {
        JsonObject<UserDto> object = new JsonObject<>();
        if (queryParams != null) {
            JSONObject jsonObject = JSON.parseObject(queryParams);
            String keyword = jsonObject.getString("keyword");
            IPage<UserDto> dtoIPage = userService.queryUserByParam(currentPage, limit, keyword);
            object.setCode(0);
            object.setMsg("ok");
            object.setCount(dtoIPage.getTotal());
            object.setData(dtoIPage);
            return object;
        } else {
            IPage<UserDto> dtoIPage = userService.queryUserByParam(currentPage, limit, queryParams);
            object.setCode(0);
            object.setMsg("ok");
            object.setCount(dtoIPage.getTotal());
            object.setData(dtoIPage);
            return object;
        }
    }

    @PostMapping("/addUser")
    public Result addAddress(UserDto userDto) {
        return userService.addUser(userDto);
    }

    @PostMapping("/deleteUser")
    public Result deleteAddress(Integer[] ids) {
        return userService.deleteUser(ids);
    }

    @PostMapping("/updateUser")
    public Result updateUser(UserDto userDto) {
        return userService.updateUser(userDto);
    }


}

五,项目总结

经过几个月的努力还坚持,社区疫情防控管理系统终于完成了,关于社区防控的相关功能实现均按照初期的需求分析来进行并实现,整个开发过程中按照软件开发的基本流程来进行,先进行需求分析,再进行概要设计,然后进行了详细设计和编码实现,最通过过了系统的功能性测试。

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-05-24 17:59:01  更:2022-05-24 18:01:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 20:52:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码