一、部署前准备

1. 环境要求

  • 基础环境:JDK 1.8+、MySQL 5.7+/8.0、Maven 3.6+、Redis(用于缓存)、Node.js(用于前端构建,可选)。
  • 依赖服务:若需对接门禁、道闸等硬件设备,需确保设备网络可达(如通过局域网或网关接入)。

2. 源码获取

  • 从 Gitee 仓库克隆源码:

    bash

    git clone https://gitee.com/java110/MicroCommunityIot.git
    cd MicroCommunityIot
    

二、后端部署(Spring Boot 服务)

1. 配置数据库

  • 导入数据库脚本:仓库中 java110-db 模块包含数据库脚本,将其导入 MySQL 中:

    bash

    # 假设脚本路径为 java110-db/src/main/resources/sql/
    mysql -u 用户名 -p 数据库名 < java110-db/src/main/resources/sql/init.sql
    
  • 修改数据库配置:在 java110-boot 或各微服务模块的 application.yml 中配置数据库连接:

    yaml

    spring:datasource:url: jdbc:mysql://localhost:3306/hc_iot?useUnicode=true&characterEncoding=utf8username: 数据库用户名password: 数据库密码
    

2. 配置 Redis

  • 在服务配置文件中添加 Redis 连接信息(用于缓存和会话管理):

    yaml

    spring:redis:host: localhostport: 6379password: 你的Redis密码(若有)
    

3. 编译打包

  • 使用 Maven 编译整个项目(支持多模块打包):

    bash

    mvn clean package -Dmaven.test.skip=true
    
  • 打包后,可执行 Jar 包位于各模块的 target 目录下(如 java110-boot/target/java110-boot.jar)。

4. 启动服务

  • 直接运行 Jar 包(以 java110-boot 为例,其他服务类似):

    bash

    java -jar java110-boot/target/java110-boot.jar --spring.profiles.active=dev  # 指定环境(dev/test/prod)
    
  • 若为微服务架构(含 iot-eurekaiot-gateway 等),需按依赖顺序启动:先启动注册中心(iot-eureka),再启动网关(iot-gateway),最后启动业务服务(如 iot-accessControliot-barrier 等)。

三、前端部署(Vue/uni-app)

1. 编译前端项目

  • 仓库中 iot-h5(H5 界面)、iot-web(管理端)等模块为前端代码,需先安装依赖并打包:

    bash

    # 进入前端模块目录
    cd iot-web
    npm install  # 安装依赖
    npm run build  # 打包生成 dist 目录
    

2. 部署静态资源

  • 将打包后的 dist 目录部署到 Nginx 或 Apache 服务器:
    • 配置 Nginx 示例:

      nginx

      server {listen 80;server_name iot.example.com;  # 你的域名root /path/to/iot-web/dist;  # 前端打包目录index index.html;location / {try_files $uri $uri/ /index.html;  # 支持 Vue 路由}
      }
      

四、服务配置与验证

1. 关键配置调整

  • 接口地址:前端需配置后端接口地址(如 iot-gateway 网关地址),确保与后端服务通信。
  • 设备对接
    • 门禁、道闸等设备需在系统中添加设备信息(IP 地址、端口、协议等),参考仓库中 iot-accessControliot-barrier 模块的说明。
    • 充电桩、智能表等设备需通过接口或协议(如 MQTT)与系统对接,具体可查看 iot-chargeiot-meter 模块的代码注释。

2. 验证部署结果

  • 访问管理端:通过 Nginx 配置的域名或服务器 IP + 端口访问前端页面(如 http://localhost:80),使用默认账号登录:
    • 运营账号:admin/admin
    • 物业账号:18909715555/123456
  • 检查服务状态:访问后端接口文档(默认路径 http://localhost:9999/doc-ui.html),验证接口是否正常响应。

五、其他注意事项

  1. 依赖服务

    • 确保 MySQL、Redis 服务正常运行,且网络通畅(防火墙需开放相关端口,如 3306、6379、8761 等)。
    • 若使用 Eureka 注册中心,需保证各服务能正常注册(默认地址 http://localhost:8761)。
  2. 日志与调试

    • 服务启动日志可通过 java -jar 命令的控制台输出查看,或配置日志文件路径(参考 logback.xml 配置)。
    • 若启动失败,检查端口冲突(如 netstat -tulpn | grep 9999)或数据库连接是否正确。
  3. 文档参考

    • 仓库中的 readme.mdCHNAGE_LOG.md 及 java110-doc 模块可能包含更详细的部署步骤和接口说明,建议结合查阅。

 

阿雪技术观

在科技发展浪潮中,我们不妨积极投身技术共享。不满足于做受益者,更要主动担当贡献者。无论是分享代码、撰写技术博客,还是参与开源项目维护改进,每一个微小举动都可能蕴含推动技术进步的巨大能量。东方仙盟是汇聚力量的天地,我们携手在此探索硅基生命,为科技进步添砖加瓦。

Hey folks, in this wild tech - driven world, why not dive headfirst into the whole tech - sharing scene? Don't just be the one reaping all the benefits; step up and be a contributor too. Whether you're tossing out your code snippets, hammering out some tech blogs, or getting your hands dirty with maintaining and sprucing up open - source projects, every little thing you do might just end up being a massive force that pushes tech forward. And guess what? The Eastern FairyAlliance is this awesome place where we all come together. We're gonna team up and explore the whole silicon - based life thing, and in the process, we'll be fueling the growth of technology.

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【安全漏洞】防范未然:如何有效关闭不必要的HTTP请求方法,保护你的Web应用

在构建和维护Web应用的过程中&#xff0c;安全问题总是我们最关心的话题之一。今天&#xff0c;我们要探讨的是一个经常被忽视的Web漏洞——未关闭或限制不必要的HTTP请求方法。 虽然我们在日常开发中主要使用 GET 和 POST 这两种请求方法&#xff0c;但像 PUT、DELETE、HEAD、…

嵌入式Linux裸机开发笔记8(IMX6ULL)主频和时钟配置实验(1)

引言在前几章实验中我们都没有涉及到 I.MX6U 的时钟和主频配置操作&#xff0c;全部使用的默认配置&#xff0c; 默认配置下 I.MX6U 工作频率为 396MHz。但是 I.MX6U 系列标准的工作频率为 528MHz&#xff0c;有些 型号甚至可以工作到 696MHz。本章学习 I.MX6U 的时钟系统&…

设计模式(四)创建型:生成器模式详解

设计模式&#xff08;四&#xff09;创建型&#xff1a;生成器模式详解生成器模式&#xff08;Builder Pattern&#xff09;是 GoF 23 种设计模式中的核心创建型模式之一&#xff0c;其核心价值在于将一个复杂对象的构建过程与其表示分离&#xff0c;使得同样的构建过程可以创建…

《Angular+Spring Boot:ERP前端采购销售库存协同架构解析》

基于Angular与Spring Boot构建的全栈ERP前端&#xff0c;绝非技术的简单叠加&#xff0c;而是通过深度融合两者特性&#xff0c;打造出兼具稳定性与灵活性的业务载体。Angular的组件化架构将复杂界面拆解为可复用的独立单元&#xff0c;依赖注入机制则让服务调用与数据流转条理…

Java 排序

文章目录排序插入排序分析希尔排序分析选择排序分析堆排序分析冒泡排序分析快速排序霍尔法分析挖坑法找基准前后指针法题目快排的优化三数取中法非递归实现快排归并排序分析非递归实现归并排序海量数据的排序非比较的排序计数排序分析基数排序桶排序排序 稳定的排序&#xff1…

日本IT就职面试|仪容礼仪篇分享建议

日系企業で好印象を与える「身だしなみ」と「面接マナー」ガイドこんにちは。 日系企業への就職・転職活動をされている方にとって、「第一印象」は合否を左右する大切なポイントですよね。実は、面接の評価は入室の瞬間から始まっていると言っても過言ではありません。 今回は…

英语听力口语词汇-8.美食类

1.crispy,crisp adj.酥脆的&#xff0c;易碎的 2.sweet adj.甜的 比如说chocolate is so sweet and delicious 3.chewy adj.难嚼的&#xff0c;难咽的 4.oatmeal n.燕麦粉 5.pickle n.泡菜 7.stir-fry v.炒菜 8.bacon n.咸肉&#xff0c;熏肉 9.yummy adj.美味可口的 1…

力扣7:整数反转

力扣7:整数反转题目思路代码题目 给你一个 32 位的有符号整数 x &#xff0c;返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−2^31, 2^31 − 1] &#xff0c;就返回 0。 思路 这道题我们可以分成两部分来做&#xff0c;一是完成反转二…

PWM信号控制电机

1&#xff1a;环境 STM32F103C8T6 KEIL5.38 2个电机 2个轮子 1个L298N STLINKV2 CH340 1个4位独立按键 杜邦线若干 2&#xff1a;代码 key.h #ifndef __KEY_H #define __KEY_H#include "stm32f10x.h"extern volatile uint8_t key_t ; extern volatile uint8_t …

开源赋能产业,生态共筑未来 | 开源科学计算与系统建模(openSCS)分论坛圆满举行

2025开放原子开源生态大会于7月23日-24日在北京国家会议中心召开。本届大会以“开源赋能产业&#xff0c;生态共筑未来”为主题&#xff0c;汇聚政、产、学、研、用、金、创、投等各领域开源力量&#xff0c;聚焦开源政策导向、生态发展趋势、开源产业实践&#xff0c;共探中国…

Android广播机制体系初识

Android广播机制体系大白话把Android的广播机制想象成小区里的“大喇叭”谁在喊话&#xff1f;任何App或系统都能当“大喇叭”&#xff0c;比如喊一嗓子“电量不足啦&#xff01;”&#xff08;这就是发送广播&#xff09;谁在听&#xff1f;其他App只要“竖起耳朵”&#xff0…

微信小程序点击输入框时,顶部导航栏被遮挡问题如何解决?

前言 不知道大家开发微信小程序的时候有没有遇到这么一个问题&#xff0c;就是在表单页面中&#xff0c;点击输入框后&#xff0c;输入框顶起会把顶部栏给遮挡住&#xff0c;如下图所示&#xff1a;遇到这种情况有没有解决的办法呢&#xff1f;能不能既将页面顶起&#xff0c;同…

通过具有一致性嵌入的大语言模型(LMMs)实现端到端乳腺癌放射治疗计划制定|文献速递-医学影像算法文献分享

Title题目End-to-end breast cancer radiotherapy planning via LMMs with consistencyembedding通过具有一致性嵌入的大语言模型&#xff08;LMMs&#xff09;实现端到端乳腺癌放射治疗计划制定01文献速递介绍近年来&#xff0c;受大型语言模型&#xff08;LLM&#xff09;启发…

vscode npm run build打包报ELIFECYCLE

npm run build打包报ELIFECYCLE 是内存溢出解决方案&#xff1a;修改build脚本 &#xff1a;"build": "node --max_old_space_size4096 node_modules/vue/cli-service/bin/vue-cli-service.js build",

【lucene】BlockMaxConjunctionScore

BlockMaxConjunctionScorer 是 Lucene 8.5 引入的一个高性能交集打分器&#xff08;conjunction scorer&#xff09;&#xff0c;专门用于处理 多条件“与”查询&#xff08;AND 查询&#xff09; 的场景。它基于 Block-Max WAND&#xff08;BMW&#xff09;算法&#xff0c;可…

Androidstudio 上传当前module 或本地jar包到maven服务器。

1.设置gradle版本到8.0 gradle-wrapper.properties文件中设置&#xff1a; distributionUrlhttps\://mirrors.aliyun.com/macports/distfiles/gradle/gradle-8.0-bin.zip 2.设置项目根目录build.gradle 设置agp版本和maven插件版本&#xff08;和gralde版本有对应关系&#xff…

Python动态规划:从基础到高阶优化的全面指南

动态规划&#xff08;Dynamic Programming&#xff09;是解决复杂优化问题的核心技术&#xff0c;也是算法领域的明珠。本文将深入探讨Python实现动态规划的全方位技术&#xff0c;涵盖基础概念、经典问题、优化技巧和实际工程应用&#xff0c;带您掌握这一强大工具的精髓。一、…

视觉大模型部署实践篇(Docker+dify+ollama安装)

一、概述 目的:实现一个本地化部署的大模型,通过工作流对图像进行一些处理。基于此,我选择了Docker+Dify+Ollama的部署。 具体实现逻辑:Docker来运行dify,dify用来绘制大模型的工作流或者rag等,Ollama用来部署本地大模型,dify调用Ollama部署的大模型进行推理。 二、Dock…

服务器启动日志等级

目录 标准日志等级 服务器启动阶段常见日志 日志配置建议 常见服务器/工具的日志等级配置方式 ET框架 Apache/Nginx 等 Web 服务器 Docker 容器 服务器启动过程中的日志等级是帮助开发者和运维人员理解系统状态的重要工具。常见的日志等级及其含义如下&#xff1a; 标准…

linux_centos7安装jdk8_采用jdk安装包安装

你问我为什么不用yum? 我yum安装不了&#xff0c;我也解决不了qwq. 文章目录一.下载安装包1.找到安装包下载位置2.上传安装包到linux3.解压jdk安装包4.配置环境一.下载安装包 1.找到安装包下载位置 去官网找到你要下载jdk版本&#xff1a; Oracle官网 下面演示安装jdk8的&am…