当前位置: 首页 > 后端技术 > Java

wumei-smart系统运行

时间:2023-04-02 01:01:11 Java

1.系统运行环境JDK>=1.8(推荐1.8版本)Mysql>=5.7.0(推荐5.7版本)Redis>=3.0Maven>=3.0Node>=12EMQX=4.0运行环境非常重要,低于此版本将不起作用。JDK1.8以上的版本缺少一些依赖,需要单独安装。安装EMQX后,需要配置HTTP认证和WebHook。二、后台操作1、创建wumei-smart数据库,在项目中导入springboot/sql/wumei.sql数据库脚本。(Linux安装mysql,配置区分大小写,在/etc/my.cnf中添加lower_case_table_names=1并重启MYSQL服务。)2、开发工具IDEA打开springboot文件夹,会自动安装Maven依赖。等待安装完成,速度视网络而定。3.修改数据库连接,文件位于:springboot/wumei-admin/src/main/resources/application-druid.yml#数据源配置spring:datasource:type:com.alibaba.druid.pool.DruidDataSourcedriverClassName:com.mysql.cj.jdbc.Driverdruid:#主数据库数据源master:url:数据库地址username:数据库账号password:数据库密码4.服务配置,文件位于:springboot/wumei-admin/src/主要/资源/application.yml。注意配置文件的格式,缩进一定要对齐。##文件上传路径示例(Windows配置D:/wumei-smart/uploadPath,Linux配置/var/wumei-smart/java/uploadPath)profile:/var/wumei-smart/java/uploadPath##redis配置redis:#地址host:localhost#端口,默认为6379port:6379#Databaseindexdatabase:0#Passwordpassword:wumei-smart##EMQX配置mqtt:username:wumei-smart#账号(简单设备认证的用户名)password:wumei-smart#Password(设备简单认证密码)host-url:tcp://localhost:1883#EMQX部署地址5.日志路径配置,文件位于:springboot/wumei-admin/src/main/resources/登录。xml#示例(Windows配置D:/wumei-smart/logs,Linux配置/var/wumei-smart/java/logs)6.运行项目WumeiSmartApplication.java,出现下图,说明启动成功。__(_)||_______________________________||_\\/\//|||'_`_\/_\|/__|'_`_\/_`|'__|__|\VV/||_||||||__/|\__\|||||(_|||||_\_/\_/\__,_|_||_||_|\___|_||___/_||_||_|\__,_|_|\__|物联网平台------------==========wumei-smart启动成功=========3.前端运行开发工具VisualStudioCode在项目中打开vue目录1.在根目录下的vue.config.js文件中修改后端接口地址和Emqx安装地址,本地无需修改。proxy:{[process.env.VUE_APP_BASE_API]:{target:`http://localhost:8080`,//后端接口地址changeOrigin:true,pathRewrite:{['^'+process.env.VUE_APP_BASE_API]:''}},['/api/v4']:{target:`http://localhost:8081`,//Emqx安装地址changeOrigin:true,},},2.修改wumei-smart\vue\src\的views\iot\device\mqtt-client.vue文件的mqtt连接地址,本地安装的Emqx不需要修改。//配置Mqtt连接地址,例如:ws://localhost:8083/mqttleturl="ws://"+window.location.hostname+":8083/mqtt";console.log("mqtt地址:",url);this.client=mqtt.connect(url,options);3、修改完成后,开始安装依赖。可以通过重新指定注册表来解决npm安装速度慢的问题。#安装依赖npminstall#强烈建议不要直接使用cnpm安装,会有各种奇怪的bugnpminstall--registry=https://registry.npm.taobao.org#本地开发启动项目npmrundev打开浏览器,输入:http://localhost:80默认账号/密码admin/admin123。如果可以正确显示登录页面,并且可以登录成功,菜单和页面显示正常,则说明环境搭建成功。4、EMQX配置HTTP认证系统,使用EMQX的HTTP认证插件实现自定义认证逻辑。配置文件位于:etc/plugins/emqx_auth_http.conf##修改认证请求中的请求地址,保持默认auth.http.auth_req=http://localhost:8080/iot/tool/mqtt/authauth.http.auth_req。method=postauth.http.auth_req.params=clientid=%c,username=%u,password=%P##注意超级用户的请求地址,请求方法和参数#auth.http.super_req=http://127.0.0.1:8991/mqtt/superuser#auth.http.super_req.method=post#auth.http.super_req.params=clientid=%c,username=%u##注意ACL认证的请求地址、请求方法和参数#auth.http.acl_req=http://127.0.0.1:8991/mqtt/acl#auth.http.acl_req.method=get#auth.http.acl_req.params=access=%A,username=%u,clientid=%c,ipaddr=%a,topic=%t,mountpoint=%m认证请求地址为后端接口http://localhost:8080/iot/tool/mqtt/auth,后端运行在本地使用localhost或者localmachine默认IP和端口都是8080,如果修改或者代理,需要做相应的修改。没有使用超级用户认证和ACL认证,但是需要注释掉,否则认证需要5秒左右。WebHook系统使用EMQX的WebHook插件实现设备上下线和IP定位功能。配置文件位于:etc/plugins/emqx_web_hook.conf##修改webhook地址web.hook.api.url=http://localhost:8080/iot/tool/mqtt/webhook#web.hook.rule.client.connect.1={“动作”:“on_client_connect”}#web.hook.rule.client.connack.1={“动作”:“on_client_connack”}web.hook.rule.client.connected.1={“动作”:"on_client_connected"}web.hook.rule.client.disconnected.1={"action":"on_client_disconnected"}#web.hook.rule.client.subscribe.1={"action":"on_client_subscribe"}#web.hook.rule.client.unsubscribe.1={"action":"on_client_unsubscribe"}#web.hook.rule.session.subscribed.1={"action":"on_session_subscribed"}#web.hook.rule.session.unsubscribed.1={"action":"on_session_unsubscribed"}#web.hook.rule.session.terminated.1={"action":"on_session_terminated"}#web.hook.rule.message.publish.1={"action":"on_message_publish"}#web.hook.rule.message.delivered.1={"action":"on_message_delivered"}#web.hook.rule.message.acked.1={"action":"on_message_acked"}WebHook地址为后端接口http://localhost:8080/iot/tool/mqtt/webhook,后端使用localhost或本机在本地运行IP,默认端口为8080,如果修改或者代理,需要修改启用web.hook.rule.client.connected.1和web.hook.rule.client.disconnected.1其他项注释掉保存回来端资源。DisableAnonymousAuthentication匿名认证不安全,建议关闭。EMQX同时使用多种认证方式,也会降低认证速度。配置文件位于:etc/emqx.conf,文件比较大,大概447行。##Value:true|falseallow_anonymous=false启用Http认证和WebHook插件。EMQX启动时,插件会默认启动。直接在data/loaded_plugins{emqx_auth_http,true}中添加要启动的插件名称。{emqx_web_hook,true}..配置文件在不同安装方式下可能位于/var/lib/emqx/loaded_plugins。修改完emqx的所有配置后,重启emqx。物美智能官网