1964springboot VUE 智慧社区可视化平台系统开发mysql数据库web结构java编程计算机网页源码maven项目

news2024/11/27 14:42:52

一、源码特点
  springboot VUE社区可视化平台系统是一套完善的完整信息管理类型系统,结合springboot框架和VUE完成本系统,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。

java社区可视化平台系统


前段主要技术 vue 
后端主要技术 Springboot java
数据库 mysql
开发工具 IDEA  JDK1.8 
环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以 不建议。

2.IDE环境:推荐IDEA;

3.硬件环境:windows 7/8/10 1G内存以上;;

5.数据库:MySql 5.0 到 5.5 等版本均可 需要高版本 如mysql8.0 需要修改数据连接配置,以及maven中的mysql 驱动包;

6.是Maven项目;查看源码目录中是否包含pom.xml;

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件 数据库字符集gb2312;

2. 使用IDEA导入项目;

3. 将项目中shequ\src\main\resources 下的 application.properties 配置文件中的数据库配置改为自己的配置;
数据库支持 mysql5.0 到5.5 ,如果需要5.7 到8.0 需要二次转换升级
4.vscode 开vue项目工程
5.vue 项目启动  npm run serve 
vue 版本 2.9.6
node 版本 16.14.2

二、功能介绍

(1)物业管理:对物业信息进行添加、删除、修改和查看
(2)住户管理:对住户信息进行添加、删除、修改和查看
(3)楼栋管理:对楼栋信息进行添加、删除、修改和查看
(4)访客登记管理:对访客登记信息进行添加、删除、修改和查看
(5)出入登记管理:对出入登记信息进行添加、删除、修改和查看
(6)维修反馈管理:对维修反馈信息进行添加、删除、修改和查看
(7)用户登录

数据库设计

CREATE TABLE `wuye` (
`wyid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',
`lxdh` VARCHAR(40) default NULL COMMENT '联系电话',
`lxdz` VARCHAR(40) default NULL COMMENT '联系地址',
`qx` VARCHAR(40) default NULL COMMENT '权限',  PRIMARY KEY  (`wyid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `zhuhu` (
`zhid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',
`ld` VARCHAR(40) default NULL COMMENT '楼栋',
`lxdh` VARCHAR(40) default NULL COMMENT '联系电话',
`zz` VARCHAR(40) default NULL COMMENT '住址',
`zcsj` VARCHAR(40) default NULL COMMENT '注册时间',  PRIMARY KEY  (`zhid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `loudong` (
`ldid` int(11) NOT NULL auto_increment,
`ldmc` VARCHAR(40) default NULL COMMENT '楼栋名称',  PRIMARY KEY  (`ldid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `fkdj` (
`fkdjid` int(11) NOT NULL auto_increment,
`fwsj` VARCHAR(40) default NULL COMMENT '访问时间',
`bt` VARCHAR(40) default NULL COMMENT '标题',
`djsj` VARCHAR(40) default NULL COMMENT '登记时间',
`djr` VARCHAR(40) default NULL COMMENT '登记人',
`fwzh` VARCHAR(40) default NULL COMMENT '访问住户',
`yy` VARCHAR(40) default NULL COMMENT '原由',
`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`fkdjid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `crdj` (
`crdjid` int(11) NOT NULL auto_increment,
`zh` VARCHAR(40) default NULL COMMENT '住户',
`lx` VARCHAR(40) default NULL COMMENT '类型',
`djr` VARCHAR(40) default NULL COMMENT '登记人',
`djsj` VARCHAR(40) default NULL COMMENT '登记时间',
`sm` VARCHAR(40) default NULL COMMENT '说明',  PRIMARY KEY  (`crdjid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

后台数据库设计

   /**访客登记列表 查询fkdj
     *
     */
    @GetMapping("list")
    public Result  list(@RequestParam(value = "pageNum",defaultValue = "1") int page,
                            @RequestParam(value = "pageSize",defaultValue = "10") int szie,
			    @RequestParam(defaultValue = "") String fwsj,
                        @RequestParam(defaultValue = "") String bt
			    )  {

        Result res=new Result();


        List list=null;
        String sql="";
        try{



	            if(fwsj!=null&&!fwsj.equals("")){
                sql+=" and fwsj like '%"+fwsj+"%'";//符合条件 拼接sql 访问时间
            }
            if(bt!=null&&!bt.equals("")){
                sql+=" and bt like '%"+bt+"%'";//符合条件 拼接sql 访问时间
            }



            list=fkdjdao.querylist(sql,page,szie);//查询fkdj表数据返回 list对象
            res.setCode(200);
            res.setMessage("查询成功");


            res.setData(tl.ltoj(list));

            list=fkdjdao.querylist(sql);
            res.setNum(list.size());

        }catch(Exception e){
            e.printStackTrace();;
        }




        return res;
    }


   /**访客登记列表 查询fkdj
	 * 
	 */

    @GetMapping("listpage")
    public Result  listpage(
			    @RequestParam(defaultValue = "") String fwsj
			    )  {

        Result res=new Result();


        List list=null;
     String sql="";
      
	  if(fwsj!=null&&!fwsj.equals("")){
                sql+=" and fwsj like '%"+fwsj+"%'";//符合条件 拼接sql 访问时间
            }
	try{
	  
	list=fkdjdao.querylist(sql);//查询gly 表数据返回 list对象
        res.setCode(200);
        res.setMessage("查询成功");


        res.setData(tl.ltoj(list));

	}catch(Exception e){
            e.printStackTrace();;
        }


       

        return res;
    }


	/**访客登记添加方法 对表 fkdj  进行添加
	 * 
	 */
    @PostMapping(value = "add")
    public Result  add(@RequestBody fkdj bean){
            Result res=new Result();


	try{
         
            if(bean.getFkdjid()!=null&&!bean.getFkdjid().equals("")){
            fkdjdao.update(bean);//执行 修改 fkdj 添加操作
                res.setMessage("操作成功");
            }else{
            fkdjdao.add(bean);//执行 添加fkdj 添加操作
                res.setMessage("添加成功");
        }


	 }catch(Exception e){
            e.printStackTrace();;
        }
        res.setCode(200);

        //System.out.println(res);



        return res;

    }


	
	 /**访客登记删除方法 对表fkdj  进行删除
	 * 
	 */
     @DeleteMapping("del/{id}")
    public Result  del( @PathVariable String id){
         Result res=new Result();
        try{
           fkdjdao.delete(id);//执行 删除fkdj 方法

        }catch(Exception e){
            e.printStackTrace();;
        }


         res.setCode(200);
         res.setMessage("删除成功");


        return res;
    }

    @DeleteMapping("likai/{id}")
    public Result  likai( @PathVariable String id){
        Result res=new Result();
        DBO db=new DBO();
        try{
           String sql="update fkdj set zt='已离开' where fkdjid='"+id+"'";
           db.update(sql);

        }catch(Exception e){
            e.printStackTrace();;
        }finally{
            db.close();
        }


        res.setCode(200);
        res.setMessage("操作成功");


        return res;
    }

vue端设计

   <div style="margin-bottom: 20px">

         <el-input style="width: 240px" placeholder="请输入楼栋名称" v-model="params.ldmc"></el-input>


     <el-button style="margin-left: 5px" type="primary" @click="load"><i class="el-icon-search"></i> 搜索</el-button>
    
    </div>

    <el-table :data="tableData" stripe>
      <el-table-column  type="index" label="序号" width="80"  :index="indexMethod"></el-table-column>


      <el-table-column prop="ldmc" label="楼栋名称"></el-table-column>
      
      <el-table-column label="操作" width="230">
        <template v-slot="scope">
<!--          scope.row 就是当前行数据-->
          <el-button type="primary" @click="$router.push('/loudongmodify?id=' + scope.row.ldid)">编辑</el-button>
          <el-popconfirm
              style="margin-left: 5px"
              title="您确定删除吗?"
              @confirm="del(scope.row.ldid)"
          >
            <el-button type="danger" slot="reference">删除</el-button>
          </el-popconfirm>
          <el-button style="margin-left: 5px" type="warning" @click="$router.push('/loudongdetail?id=' + scope.row.ldid)">详情</el-button>
        </template>
      </el-table-column>
    </el-table>

    <!--    分页-->
    <div style="margin-top: 20px">
      <el-pagination
          background
          :current-page="params.pageNum"
          :page-size="params.pageSize"
          layout="prev, pager, next"
          @current-change="handleCurrentChange"
          :total="total">
      </el-pagination>
    </div>

    <el-dialog title="查看" :visible.sync="dialogFormVisible" width="30%">
    
      <div slot="footer" class="dialog-footer">
        <el-button @click="dialogFormVisible = false">取 消</el-button>

      </div>
    </el-dialog>
  </div>
</template>

<script>
import request from "@/utils/request";
import Cookies from 'js-cookie'

export default {
  name: 'loudonglist',
  data() {
    return {
     
      tableData: [],
      total: 0,
      form: {},
      dialogFormVisible: false,
      params: {
        pageNum: 1,
        pageSize: 10,
      ldmc: "",
      
      }
    }
  },
  created() {
    this.load()
  },
  methods: {
    indexMethod(index) {
        return index+1;
      },
   
    load() {
      request.get('/loudong/list', {
        params: this.params
      }).then(res => {
        if (res.code == '200') {
          this.tableData = JSON.parse(res.data)
          this.total = res.num
        }
      })
    },
    reset() {
      this.params = {
        pageNum: 1,
        pageSize: 10,
      ldmc: "",
      }
      this.load()
    },
    handleCurrentChange(pageNum) {
      // 点击分页按钮触发分页
      this.params.pageNum = pageNum
      this.load()
    },
    del(id) {
      request.delete("/loudong/del/" + id).then(res => {
        if (res.code == '200') {
          this.$notify.success('删除成功')
          this.load()
        } else {
          this.$notify.error(res.message)
        }
      })
    }
  }
}
</script>

三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件\src\main\resources\application.properties
2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。
3、数据库文件名是javashequ.sql 系统名称shequ
4、地址:http://128.0.0.1:8080/login

四 系统实现

需要源码 其他的定制服务  下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1845160.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

INFINI Labs 助力开源与教育:免费许可证计划全面升级

在数字化浪潮席卷全球的今天&#xff0c;INFINI Labs 深刻认识到开源项目和教育机构在技术创新与人才培养中的核心作用。因此&#xff0c;我们郑重推出全新升级的免费许可证计划&#xff0c;旨在全球范围内为开源社区和教育界提供有力支持&#xff0c;共同推动软件生态的繁荣与…

策略模式编程

接口定义&#xff1a; public interface ProcessParserStrategy { List<ProcessInfo> parser(String osType, String processInfo); String getApp(); } public interface ConfigParserStrategy { List<ConfigInfo> parser(String configInfo); String getConfigT…

DC/AC电源模块:为通信设备提供稳定的电力供应

BOSHIDA DC/AC电源模块&#xff1a;为通信设备提供稳定的电力供应 在现代通信系统中&#xff0c;稳定可靠的电力供应是确保信息传输连续性和服务质量的关键因素之一。DC/AC电源模块作为通信设备能源管理的核心组件&#xff0c;扮演着至关重要的角色。它不仅负责将输入的直流电…

Spring自定义标签体系和应用

我们知道&#xff0c;在使用Dubbo框架时&#xff0c;需要指定配置文件中的application、protocol、registry、provider、service等服务器端和客户端的配置项&#xff0c;典型的配置方法如下所示。通过这些配置项&#xff0c;我们可以基于Spring容器来启动Dubbo服务。 <!-- …

pytorch lighting: Trying to resize storage that is not resizable

问题 在用pytorch lighting进行训练时碰到如下错误 即 Trying to resize storage that is not resizable 。 解决方案 在dataloader采样图片以及label时&#xff0c;保证每次采样的图片的分辨率不变。

抖去推,筷子剪辑,超级编导短视频矩阵系统,应该怎么选择?

选择一个适合您需求的软件平台&#xff0c;然后按照以下步骤进行选择&#xff1a; 研究和比较不同平台&#xff1a;比较不同的短视频编辑软件&#xff0c;例如抖音、快手等&#xff0c;看看它们提供了哪些功能和特点。 确定需求&#xff1a;确定您希望在短视频中实现的功能和效…

每天写java到期末考试(6.21)--集合4--练习--6.20

练习1&#xff1a; 正常写集合 bool类 代码&#xff1a; import QM_Fx.Student;import java.util.ArrayList;public class test {public static void main(String[] args) {ArrayList<Student> listnew ArrayList<>();//2.创建学生对象Student s1new Student(&quo…

C语言 | Leetcode C语言题解之第169题多数元素

题目&#xff1a; 题解&#xff1a; int majorityElement(int* nums, int numsSize) {int ans 0;for (int i 0, cnts 0; i < numsSize; i) {if (nums[i] ans) {cnts;} else if (cnts 0) {ans nums[i];} else {cnts--;}}return ans; }

python逆序输出IP地址 青少年编程电子学会python编程等级考试三级真题解析2021年12月

python逆序输出IP地址 2021年12月 python编程等级考试级编程题 一、题目要求 1、编程实现 请读取文件IP.txt的数据&#xff0c;数据内容如下图显示&#xff0c;文件中每一行存储一个P地址&#xff0c;下列代码实现了读取数据&#xff0c;每次读取一行数据&#xff0c;都删除…

HTTP详细总结

概念 HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff0c;规定了浏览器和服务器之间数据传输的规则。 特点 基于TCP协议: 面向连接&#xff0c;安全 TCP是一种面向连接的(建立连接之前是需要经过三次握手)、可靠的、基于字节流的传输层通信协议&#xff0c;在…

驾校OBD接入CAN总线数据大众朗逸仪表网关位置

在汽车的复杂电路网络中&#xff0c;仪表网关扮演着信息枢纽的角色。对于驾校使用大众朗逸车主而言&#xff0c;了解仪表网关的位置不仅有助于日常维护&#xff0c;更是故障诊断和车辆升级的关键所在。 大众朗逸作为一款深受消费者喜爱的车型&#xff0c;凭借其稳定的性能和经…

基于SSM+Jsp的水果销售管理网站

开发语言&#xff1a;Java框架&#xff1a;ssm技术&#xff1a;JSPJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包…

BirdTalk IM集群中消息流转策略讨论

BirdTalk IM集群中消息流转策略讨论 目前群聊的存储策略是1写多读方案&#xff1b;每个群组一个队列&#xff0c;按时间顺序排列&#xff0c;不区分用户&#xff1b; 私聊的存储是写扩散的&#xff0c;每个人都有自己的消息队列&#xff0c;按时间顺序 保存所有的消息&#x…

详细分析Matplotlib 绘制三维曲线图的细节(附Demo)

目录 前言1. 基本知识2. Demo 前言 对于Matplotlib的基本知识推荐阅读&#xff1a;python之Matplotlib详细分析&#xff08;附代码&#xff09; 1. 基本知识 Matplotlib 是 Python 中常用的绘图库&#xff0c;可以用于生成各种类型的图表&#xff0c;包括三维曲线图 在三维…

Protobuf安装配置--附带每一步截图

Protobuf Protobuf&#xff08;Protocol Buffers&#xff09;协议是一种由 Google 开发的二进制序列化格式和相关的技术&#xff0c;它用于高效地序列化和反序列化结构化数据&#xff0c;通常用于网络通信、数据存储等场景。 为什么要使用Protobuf Protobuf 在许多领域都得到…

如何利用AI大模型设计电机本体?

一、背景 AI在电机本体设计中的应用正逐渐成为提升设计效率、优化性能和降低成本的重要手段。通过深度学习、机器学习、计算机辅助设计&#xff08;CAD&#xff09;和仿真技术的结合&#xff0c;AI能够帮助工程师更快速准确地完成电机的设计与优化工作。以下是AI在电机本体设计…

关于如何得到Mindspore lite所需要的.ms模型

关于如何得到Mindspore lite所需要的.ms模型 一、.ckpt模型文件转.mindir模型二、.mindir模型转.ms模型三、其它3.1 代码3.2 数据 四、参考文档 一、.ckpt模型文件转.mindir模型 由于要得到ms模型&#xff0c;mindspore的所有模型里面&#xff0c;是必须要用mindir模型才可以进…

华为OD机试 - 环中最长子串 - 滑动窗口(Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;D卷C卷A卷B卷&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;每一题都有详细的答题思路、详细的代码注释、样例测…

【总结】ui自动化selenium知识点总结

1. 大致原理 首页安装第三方库selenium库&#xff0c; 其次要下载好浏览器驱动文件&#xff0c;比如谷歌的 chromedriver.exe&#xff0c;配置上环境变量。 使用selenium的webdriver类去创建一个浏览器驱动对象赋值叫driver&#xff0c;一个浏览器驱动对象就可以 实现 对浏…

STM32C8T6与TB6612

好久没写博客了&#xff0c;今天水一篇 接线